让Linux进程在后台运行
Posted Locutus
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了让Linux进程在后台运行相关的知识,希望对你有一定的参考价值。
1. 命令简介
nohup 的作用可以将程序以忽略挂起信号(SIGHUP)的方式运行。常见的用法是和 & 命令一同使用,将命令放置到后台运行,即使终端挂掉,进程会忽略挂起信号,继续运行。
将程序放到后台运行,一般有两种方式:
command &,后台运行,关掉终端会停止运行
nohup command &,后台运行,关掉终端也会继续运行
如果使用nohup执行程序未显示进行标准输出重定向,则标准输出默认重定向当前工作目录的 nohup.out 文件中。如果当前工作目录的 nohup.out 文件不可写,输出重定向到$HOME/nohup.out
文件中。如果没有文件能创建或打开用于追加,那么command参数指定的命令不可调用。
如果标准错误未显示重定向,那么标准错误默认重定向到与标准输出相同的文件。
nohup COMMAND [ARGS]
nohup OPTION
2. 常用示例
使用nohup 命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件。
# nohup ./test.sh &
标准输出与标准错误输出重定向。
# nohup ./test.sh > test.log 2>&1 &
指定输出文件, 输出被重定向到output.txt文件中。
# nohup bash a.sh &> error.txt
- 注:2>&1 标识标准错误输出重定向等同于标准输出重定向,即标准错误输出也重定向到文件test.log;& 是命令放在后台执行,需要放在命令的最后面。
以上是关于让Linux进程在后台运行的主要内容,如果未能解决你的问题,请参考以下文章