我有一个在Linux服务器上运行的代码。由于运行需要数小时,因此我必须使用nohup
来确保我的代码仍在运行,以防我断开与服务器的连接。因为我必须等待数小时才能看到结果,所以我定义了一个计数器来打印出代码的进度(%)。如果我断开与服务器的连接或关闭终端,我看到代码仍在运行的唯一方法是使用top
。有什么方法可以再次看到输出控制台(显示进度的消息)?
答案 0 :(得分:29)
您可以通过从另一个终端运行以下来实时查看输出。
tail -f nohup.out
答案 1 :(得分:11)
您可以将标准输出和标准错误重定向到文件并查看该文件。例如:
nohup command 2>&1 > outputfile &
注意手册页的默认行为:
如果标准输出是终端,请将输出附加到' nohup.out'如果 可能,' $ HOME / nohup.out'除此以外。如果标准错误是a 终端,将其重定向到标准输出
所以你真的可以运行
nohup command &
然后查看nohup.out