在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命令提升权限。