nohup
(no hang-up)命令用于在Linux中运行后台进程,即使关闭终端或断开连接,进程也会继续运行
-
打开终端。
-
使用
nohup
命令启动后台进程。基本语法如下:
nohup command-to-run &
其中,command-to-run
是要运行的命令,&
表示将命令放入后台运行。
例如,如果你想在后台运行一个名为my_script.sh
的脚本,可以使用以下命令:
nohup ./my_script.sh &
- 运行命令后,你会看到类似以下的输出:
nohup: ignoring input and appending output to 'nohup.out'
这意味着命令的输出已被重定向到名为nohup.out
的文件中。你可以使用文本编辑器查看此文件,以检查命令的输出。
- 若要检查后台进程的状态,可以使用
ps
命令。例如,要查找名为my_script.sh
的进程,可以使用以下命令:
ps -ef | grep my_script.sh
- 如果你想在后台进程中使用不同的输出文件,可以使用
>
重定向符。例如,要将输出重定向到名为output.log
的文件,可以使用以下命令:
nohup ./my_script.sh > output.log 2>&1 &
这里,2>&1
表示将标准错误(2)重定向到标准输出(1),以便将所有输出保存到output.log
文件中。
- 当你不再需要后台进程时,可以使用
kill
命令终止它。首先,使用ps
命令找到进程ID(PID),然后使用kill
命令终止进程。例如:
kill PID
将PID
替换为实际的进程ID。