在Linux中,nohup
(no hang-up)命令允许您在后台运行程序,即使关闭终端或断开连接,程序也会继续运行
使用nohup
命令启动程序:
nohup command &
其中,command
是您要运行的程序或脚本。&
符号将程序放入后台运行。
重定向输出:
默认情况下,nohup
会将程序的输出发送到名为nohup.out
的文件。如果您想将输出重定向到其他文件,可以使用以下语法:
nohup command > output_file 2>&1 &
这里,output_file
是您希望将输出保存到的文件名。2>&1
表示将标准错误(2)重定向到标准输出(1),以便所有输出都保存到同一个文件中。
查看进程:
要查看使用nohup
运行的进程,可以使用ps
命令:
ps -ef | grep command
这将显示与command
相关的所有进程。请注意,grep
命令本身也可能出现在结果中,可以通过忽略它来过滤结果:
ps -ef | grep '[c]ommand'
终止进程:
若要终止使用nohup
运行的进程,首先需要找到进程ID(PID)。可以使用grep
和awk
命令获取PID:
pid=$(ps -ef | grep '[c]ommand' | awk '{print $2}')
然后,使用kill
命令终止进程:
kill $pid
如果进程无法正常终止,可以使用kill -9
强制终止:
kill -9 $pid
通过以上步骤,您可以使用nohup
命令在Linux中管理长时间运行的任务。