nohup(no hang-up)命令在Linux服务器上用于在后台运行程序,即使关闭终端或断开SSH连接,程序也会继续运行。以下是如何使用nohup命令的详细步骤:
nohup command [arguments] &
command:要运行的命令。[arguments]:命令的参数。&:将命令放入后台运行。假设你想在后台运行一个名为my_script.sh的脚本,并且希望即使关闭终端,该脚本也能继续运行。
编写脚本:
确保你的脚本my_script.sh具有可执行权限。
chmod +x my_script.sh
使用nohup运行脚本:
nohup ./my_script.sh &
默认情况下,nohup会将命令的输出重定向到一个名为nohup.out的文件中。如果你想将输出重定向到其他文件,可以使用以下语法:
nohup command [arguments] > output.log 2>&1 &
>:将标准输出重定向到指定文件。2>&1:将标准错误输出重定向到标准输出(即与标准输出合并)。你可以使用ps命令来查看后台运行的进程。
ps aux | grep my_script.sh
如果你需要终止后台运行的进程,可以使用kill命令。
kill -9 <PID>
其中<PID>是进程的ID。
nohup.out文件不会无限增长,可以定期清理或使用日志轮转工具(如logrotate)。通过以上步骤,你可以在Linux服务器上使用nohup命令来运行后台进程,并确保即使关闭终端,进程也能继续运行。