nohup(no hang-up)是一个在Linux和Unix系统中用于在后台运行命令的实用程序,即使关闭终端或断开连接,它也可以使进程继续运行
使用nohup运行命令:
要使用nohup运行命令,请在命令前加上nohup,并将输出重定向到一个文件(例如output.log)。例如:
nohup your_command > output.log 2>&1 &
这里,your_command是您要运行的命令,output.log是输出文件的名称。2>&1表示将标准错误(2)重定向到标准输出(1),&表示将命令放入后台运行。
查看输出日志:
使用tail命令实时查看输出日志的内容:
tail -f output.log
要停止实时查看,按Ctrl + C。
终止长时间运行的任务:
要终止长时间运行的任务,首先需要找到进程ID(PID)。可以使用ps命令结合grep来查找:
ps aux | grep your_command
在输出中找到与您的命令相关的进程,记下PID(通常在第一列)。然后使用kill命令终止进程:
kill PID
将PID替换为实际的进程ID。如果进程无法正常终止,可以使用kill -9强制终止:
kill -9 PID
重新启动任务:
如果需要重新启动任务,只需再次使用nohup命令运行它,并将输出重定向到同一个日志文件:
nohup your_command > output.log 2>&1 &
通过这些方法,您可以使用nohup命令在Linux中管理长时间运行的任务。