linux

如何将nohup命令的输出重定向到文件

小樊
40
2025-09-10 04:21:48
栏目: 编程语言

在Linux和Unix系统中,nohup命令用于在后台运行程序,即使关闭终端或断开连接,程序也会继续运行。默认情况下,nohup会将输出重定向到一个名为nohup.out的文件中。如果你想将输出重定向到其他文件,可以使用以下方法:

  1. 使用重定向操作符>

    nohup your_command > output_file 2>&1 &
    

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

    例如,如果你想将python script.py的输出重定向到output.log文件,可以这样写:

    nohup python script.py > output.log 2>&1 &
    
  2. 使用tee命令:

    nohup your_command | tee output_file &
    

    这里,tee命令会将输出同时显示在终端并保存到指定的文件中。&表示将命令放入后台运行。

    例如,如果你想将python script.py的输出重定向到output.log文件并同时在终端显示,可以这样写:

    nohup python script.py | tee output.log &
    

注意:在使用这些方法时,请确保你有足够的权限来写入目标文件。如果需要,可以使用sudo命令提升权限。

0
看了该问题的人还看了