在Linux和Unix系统中,nohup
命令用于在后台运行程序,即使关闭终端或断开连接,程序也会继续运行。默认情况下,nohup
会将输出重定向到一个名为nohup.out
的文件中。如果你想将输出重定向到其他文件,可以使用以下方法:
使用重定向操作符>
:
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 &
使用tee
命令:
nohup your_command | tee output_file &
这里,tee
命令会将输出同时显示在终端并保存到指定的文件中。&
表示将命令放入后台运行。
例如,如果你想将python script.py
的输出重定向到output.log
文件并同时在终端显示,可以这样写:
nohup python script.py | tee output.log &
注意:在使用这些方法时,请确保你有足够的权限来写入目标文件。如果需要,可以使用sudo
命令提升权限。