我正在运行一个matlab脚本,该脚本在函数中分配输入参数和输出文件夹。 当我像这样运行nohup时 nohup ./matlabscript.h& 然后它生成一个非常大的nohup.out文件。如何避免创建该文件? 输出文件夹已分配,因此我不确定是否需要分配输出文件? 谢谢
答案 0 :(得分:2)
在filmor评论时,您可以redirect stdout 到某个文件。
nohup ./script > script.out &
甚至将 stdout 和 stderr 重定向到同一个文件
nohup ./script > script.out 2>&1 &
或另一个
nohup ./script > script.out 2> script.err &
要丢弃输出,请将其重定向到/dev/null
。数据基本上被破坏,因此不使用内存。见null(4)。如果要丢弃两个输出,请使用:
nohup ./script > /dev/null 2>&1 &
当两个输出都被重定向时, nohup(1)会发出通知,因此不会创建nohup.out
文件(前提是这两个输出都不是终端,请参阅isatty(3))。
我还建议您考虑使用batch(1),例如使用here document
batch << EOJ
./script > script.out 2>&1
EOJ