在 CentOS 中,nohup 命令用于在后台运行程序,即使关闭终端也不会中断进程
打开终端。
使用 cd 命令导航到脚本所在的目录。例如,如果脚本位于 /home/user/my_script.sh,则输入 cd /home/user。
确保脚本具有可执行权限。如果没有,请使用以下命令添加可执行权限:chmod +x my_script.sh。
使用 nohup 命令在后台运行脚本。例如:nohup ./my_script.sh &。这里的 & 符号表示将进程放入后台运行。
运行命令后,你会看到类似以下的输出:nohup: ignoring input and appending output to 'nohup.out'。这意味着脚本的输出将被重定向到名为 nohup.out 的文件中。
要检查脚本的输出,可以使用 tail 命令实时查看 nohup.out 文件的内容:tail -f nohup.out。
如果需要在后台运行的脚本中使用特定的环境变量,可以在 nohup 命令前设置它们。例如:MY_VAR=value nohup ./my_script.sh &。
若要在后台运行多个脚本,可以分别为每个脚本执行上述步骤,或者在单个命令中使用分号(;)分隔它们。例如:nohup ./my_script1.sh & nohup ./my_script2.sh &。
现在,即使关闭终端,脚本也会在后台继续运行。要终止后台进程,可以使用 ps 命令找到进程 ID(PID),然后使用 kill 命令终止它。例如:
使用 ps 命令查找进程 ID:ps aux | grep my_script.sh。
找到脚本的进程 ID,然后使用 kill 命令终止它:kill [PID]。将 [PID] 替换为实际的进程 ID。