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中管理长时间运行的任务。