在Linux中,nohup(no hang-up)命令允许您在关闭SSH会话或断开连接后继续运行进程
使用nohup命令启动进程:
要使用nohup命令启动进程,请在命令前加上nohup,并将输出重定向到一个文件。例如,如果您要运行名为my_script.sh的脚本,可以使用以下命令:
nohup ./my_script.sh > output.log 2>&1 &
这里,>将标准输出重定向到output.log文件,2>&1将标准错误重定向到标准输出,&将进程放入后台运行。
查看进程输出:
进程的输出将被记录在output.log文件中。要查看输出,可以使用tail命令:
tail -f output.log
这将实时显示output.log文件中的内容。
关闭SSH会话:
在启动进程后,您可以安全地关闭SSH会话。由于使用了nohup命令,进程将在后台继续运行,不受SSH会话中断的影响。
重新连接SSH会话:
如果您需要重新连接到之前的SSH会话,可以使用screen或tmux等终端复用器。这些工具允许您在断开连接后重新连接,并恢复之前的会话。
例如,使用screen:
安装screen(如果尚未安装):
sudo apt-get install screen
启动新的screen会话:
screen
在screen会话中运行您的进程,例如:
./my_script.sh
按Ctrl-A,然后按D将screen会话分离并返回到常规SSH会话。
要重新连接screen会话,请运行:
screen -r
通过使用nohup命令和终端复用器(如screen或tmux),您可以确保在关闭SSH会话或断开连接后,进程仍将继续运行。