nohup 是否可以将输出同时写入文件 nohup.out 和屏幕/终端?

And*_*rew 24 shell bash nohup

我正在使用bash外壳。我经常使用nohup以确保当我关闭启动它们的 shell/终端时我的进程不会停止。我使用如下语法:

nohup myprocess
Run Code Online (Sandbox Code Playgroud)

启动时,nohup给出消息:

nohup: ignoring input and appending output to 'nohup.out'

然后,nohup不再向屏幕输出;它全部写入nohup.out.

然而,我经常想监控我的计算进度。我可以通过阅读nohup.out使用vi或来做到这一点tail,但这可能会很耗时,尤其是当我的计算需要几个小时时。

有什么方法可以将输出同时 打印到屏幕上nohup.out(以防万一我失去了互联网连接并因此关闭了启动该过程的终端)和屏幕?谢谢你的时间。

cho*_*oba 24

你可以跑

nohup yourprocess & tail -f nohup.out
Run Code Online (Sandbox Code Playgroud)


Jho*_*han 16

证明。

nohup yourprocess 1>&2  | tee nohup.out &
Run Code Online (Sandbox Code Playgroud)