linux

如何通过nohup命令避免Linux进程被挂起

小樊
38
2025-10-11 12:18:54
栏目: 智能运维

nohup命令是Linux中用于在后台运行程序并忽略挂起信号的命令

  1. 在命令前加上nohup。例如,如果你想在后台运行一个名为my_script.sh的脚本,可以使用以下命令:
nohup ./my_script.sh &

这里的&符号表示将进程放入后台运行。

  1. 将输出重定向到文件。默认情况下,nohup会将输出发送到名为nohup.out的文件。如果你想将输出重定向到其他文件,可以使用以下命令:
nohup ./my_script.sh > output.log &

这将把输出保存到output.log文件中。

  1. 如果你想同时将标准输出和标准错误重定向到同一个文件,可以使用以下命令:
nohup ./my_script.sh > output.log 2>&1 &

这将把标准输出和标准错误都重定向到output.log文件中。

  1. 使用disown命令将进程从当前shell会话中分离。这样,即使你关闭终端或注销,进程也会继续运行。首先,使用nohup命令启动进程,然后找到进程ID(PID),最后使用disown命令将其分离:
nohup ./my_script.sh > output.log &
disown %1

这里的%1表示第一个后台进程。如果你有多个后台进程,可以使用jobs命令查看它们的ID。

遵循以上步骤,你可以使用nohup命令避免Linux进程被挂起。

0
看了该问题的人还看了