在Linux系统中,nohup命令(no hang-up)能够让您的脚本在终端关闭或ssh连接中断后继续运行,显著提升脚本的稳定性。即使您与服务器失去连接,脚本也能持续执行。以下步骤演示如何使用nohup命令:
-
打开终端: 首先,打开您的Linux终端。
-
切换目录: 使用cd命令导航到存放脚本的目录。
-
运行脚本: 假设您的脚本名为my_script.sh,使用以下命令运行:
nohup ./my_script.sh &
& 符号将脚本置于后台运行,允许您继续使用终端。
-
重定向输出: nohup 命令默认将脚本的输出重定向到nohup.out 文件。 如果您需要将输出重定向到其他文件,例如output.log,可以使用:
nohup ./my_script.sh > output.log 2>&1 &
> 将标准输出重定向,2>&1 将标准错误输出也重定向到标准输出(output.log)。 & 仍然将脚本放入后台运行。
-
查看输出: 脚本运行期间,您可以随时查看nohup.out 文件(或您指定的输出文件)的内容:
cat nohup.out
-
停止脚本: 若需停止脚本,首先使用 ps 命令查找脚本的进程ID (PID):
ps aux | grep my_script.sh
然后使用 kill 命令终止进程,将 [PID] 替换为找到的进程ID:
kill [PID]
通过 nohup 命令,您可以确保脚本在断开连接后继续运行,从而增强脚本的可靠性。