nohup(no hang-up)命令用于在Linux和Unix系统中运行一个进程,使其在用户退出登录后继续运行。这对于需要长时间运行的进程或守护进程非常有用。要使用nohup命令实现进程守护,请按照以下步骤操作:
打开终端。
输入nohup命令,后跟要执行的命令及其参数。例如,如果要运行名为my_script.sh的脚本,可以使用以下命令:
nohup ./my_script.sh &
这里的&符号表示将进程放入后台运行。
nohup命令会将输出重定向到一个名为nohup.out的文件中。如果你想将输出重定向到其他文件,可以使用以下命令:nohup ./my_script.sh > output.log 2>&1 &
这里,>表示将标准输出重定向到output.log文件,2>&1表示将标准错误输出重定向到标准输出(即output.log文件),最后的&符号表示将进程放入后台运行。
按下回车键执行命令。此时,即使你关闭终端或注销登录,进程也会继续运行。
若要检查进程的输出,可以查看nohup.out文件(或你指定的其他输出文件):
cat nohup.out
ps命令找到进程ID(PID),然后使用kill命令终止进程:ps -ef | grep my_script.sh
kill [PID]
将[PID]替换为实际的进程ID。
通过以上步骤,你可以使用nohup命令实现进程守护。