MTT*_*MTT 18 linux terminal nohup
我有一个在Linux服务器上运行的代码.由于运行需要数小时,我必须使用nohup以确保我的代码仍在运行,以防我失去与服务器的连接.因为我必须等待数小时才能看到结果,所以我定义了一个计数器来打印出代码的进度(%).如果我断开与服务器的连接或关闭终端,我可以看到代码仍在运行的唯一方法就是使用top.有什么方法可以再次看到输出控制台(显示进度的消息)?
yfp*_*fpb 41
您可以通过从另一个终端运行以下来实时查看输出.
tail -f nohup.out
Run Code Online (Sandbox Code Playgroud)
小智 15
您可以将标准输出和标准错误重定向到文件并查看该文件.例如:
nohup command 2>&1 > outputfile &
Run Code Online (Sandbox Code Playgroud)
注意手册页的默认行为:
如果标准输出是终端,则在可能的情况下将输出附加到'nohup.out',否则为'$ HOME/nohup.out'.如果标准错误是终端,则将其重定向到标准输出
所以你真的可以跑了
nohup command &
Run Code Online (Sandbox Code Playgroud)
然后看看nohup.out