在 运行 nohup 命令后如何查看输出控制台?
How can I see the output console after running a nohup command?
我在 Linux 服务器上有一个代码 运行ning。由于 运行 需要几个小时,我必须使用 nohup
来确保我的代码仍然 运行ning 以防我与服务器的连接断开。同样,因为我必须等待数小时才能看到结果,所以我定义了一个计数器来打印我的代码的进度 (%)。如果我断开与服务器的连接或关闭终端,我能看到代码的唯一方法仍然是 运行ning 是使用 top
。有什么方法可以让我再次看到输出控制台(显示进度的消息)?
您可以将标准输出和标准错误重定向到一个文件并查看该文件。例如:
nohup command 2>&1 > outputfile &
注意手册页中的默认行为:
If standard output is a terminal, append output to 'nohup.out' if
possible, '$HOME/nohup.out' otherwise. If standard error is a
terminal, redirect it to standard output
所以你真的可以 运行
nohup command &
然后在nohup.out
中查找
您可以从另一个终端通过下面的运行实时查看输出。
tail -f nohup.out
我在 Linux 服务器上有一个代码 运行ning。由于 运行 需要几个小时,我必须使用 nohup
来确保我的代码仍然 运行ning 以防我与服务器的连接断开。同样,因为我必须等待数小时才能看到结果,所以我定义了一个计数器来打印我的代码的进度 (%)。如果我断开与服务器的连接或关闭终端,我能看到代码的唯一方法仍然是 运行ning 是使用 top
。有什么方法可以让我再次看到输出控制台(显示进度的消息)?
您可以将标准输出和标准错误重定向到一个文件并查看该文件。例如:
nohup command 2>&1 > outputfile &
注意手册页中的默认行为:
If standard output is a terminal, append output to 'nohup.out' if possible, '$HOME/nohup.out' otherwise. If standard error is a terminal, redirect it to standard output
所以你真的可以 运行
nohup command &
然后在nohup.out
中查找您可以从另一个终端通过下面的运行实时查看输出。
tail -f nohup.out