温馨提示×

Debian系统中nohup命令使用技巧

小樊
37
2025-10-12 05:17:58
栏目: 智能运维

nohup(no hang-up)命令在Debian系统中用于在后台运行程序,即使关闭终端或断开连接,程序也会继续运行

  1. 基本用法:

    nohup command & 

    例如,要在后台运行一个名为my_script.sh的脚本,可以使用以下命令:

    nohup ./my_script.sh & 
  2. 输出重定向: 默认情况下,nohup会将程序的输出重定向到名为nohup.out的文件。如果需要将输出重定向到其他文件,可以使用以下命令:

    nohup command > output_file & 

    例如,要将输出保存到名为output.log的文件,可以使用以下命令:

    nohup ./my_script.sh > output.log & 
  3. 错误输出重定向: 如果需要将错误输出重定向到其他文件,可以使用以下命令:

    nohup command > output_file 2> error_file & 

    例如,要将标准输出保存到output.log文件,将错误输出保存到error.log文件,可以使用以下命令:

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

    nohup command > output_file 2>&1 & 

    例如,要将标准输出和错误输出都保存到output.log文件,可以使用以下命令:

    nohup ./my_script.sh > output.log 2>&1 & 
  5. 在后台运行多个程序: 可以使用nohup同时运行多个程序。只需为每个程序添加&符号即可。例如:

    nohup ./my_script1.sh > output1.log 2>&1 & nohup ./my_script2.sh > output2.log 2>&1 & 
  6. 查看后台进程: 使用ps命令查看使用nohup运行的后台进程。例如,要查看所有使用nohup运行的进程,可以使用以下命令:

    ps -ef | grep nohup 
  7. 终止后台进程: 如果需要终止使用nohup运行的后台进程,可以使用kill命令。首先,使用ps命令找到进程ID(PID),然后使用kill命令终止进程。例如:

    kill -9 PID 

    其中,将PID替换为实际的进程ID。

0