nohup
(no hang-up)命令用于在Linux和Unix系统上运行命令,使其在用户退出登录后继续运行。这在运行长时间运行的任务或守护进程时非常有用。以下是如何在CentOS上使用nohup
命令的步骤:
基本命令格式:
nohup command [arguments] &
示例:
假设你想在后台运行一个名为my_script.sh
的脚本,并且希望它在你退出登录后仍然继续运行。
nohup ./my_script.sh &
输出重定向:
默认情况下,nohup
会将输出重定向到当前目录下的nohup.out
文件。如果你想将输出重定向到其他文件,可以使用>
或>>
操作符。
nohup ./my_script.sh > output.log 2>&1 &
这里,>
将标准输出重定向到output.log
,2>&1
将标准错误重定向到标准输出(即output.log
),最后的&
将命令放入后台运行。
查看所有进程:
ps aux | grep nohup
查找特定进程:
ps aux | grep my_script.sh
终止进程:
找到进程ID(PID)后,可以使用kill
命令终止进程。
kill -9 PID
其中PID
是你要终止的进程的ID。
nohup.out
文件来查看输出,这是一个很好的习惯,因为它可以帮助你调试和监控进程。&
将命令放入后台运行,这样你可以在不阻塞终端的情况下继续工作。通过这些步骤,你可以在CentOS上有效地使用nohup
命令来运行长时间运行的任务。