centos

CentOS下nohup命令如何记录输出

小樊
37
2025-06-06 08:43:23
栏目: 智能运维

在 CentOS 系统中,nohup 命令用于在后台运行程序,即使关闭终端或断开连接,程序也会继续运行

  1. 使用 nohup 命令将输出重定向到日志文件:

    nohup your_command > output.log 2>&1 &
    

    这里,your_command 是你要运行的命令。output.log 是你希望存储输出的日志文件。2>&1 表示将标准错误(2)重定向到标准输出(1),& 表示将命令放入后台运行。

    例如,如果你想运行一个名为 my_script.sh 的脚本,并将输出记录到 my_output.log 文件中,你可以使用以下命令:

    nohup ./my_script.sh > my_output.log 2>&1 &
    
  2. 使用 nohup 命令将输出重定向到指定的日志文件,并在命令执行完毕后发送通知:

    nohup your_command > output.log 2>&1 & echo $! > pid_file.pid
    

    这里,$! 表示刚刚放入后台运行的进程的进程 ID(PID)。pid_file.pid 是一个包含 PID 的文件,方便你在需要时终止该进程。

    例如:

    nohup ./my_script.sh > my_output.log 2>&1 & echo $! > my_script.pid
    

    当你需要终止该进程时,可以使用以下命令:

    kill $(cat my_script.pid)
    

这两种方法都可以让你在 CentOS 系统中使用 nohup 命令记录输出。选择适合你需求的方法即可。

0
看了该问题的人还看了