我在屏幕会话中启动了一项工作,预计要运行几个小时。有时我会被要求检查工作是否仍在运行,并猜测工作占比是多少。
猜测它是否正在工作就像执行ps -fu $LOGNAME
检查进程是否仍然存在一样简单,但为了猜测%我需要检查程序的输出(它输出一些信息,可用于grep -n
查看它当前正在处理哪一行文件)。
我可以附加会话(screen -R jobLoadItems
)并查看它,但我想在不再次附加会话的情况下执行此操作。我已经检查了在屏幕会话中执行的操作Ctrla-H激活屏幕日志,但它太冗长了,会占用所有可用的磁盘空间。
那么有没有一种方法可以只打印屏幕会话的最后几行而不附加它?(类似于screen -S jobLoadItem -Q display last 50 lines
)
答案1
您可以使用
screen -r <name of sesion> -X hardcopy
Ctrla这与-相同h
来自手册页:
Ctrla- h (硬拷贝)
将当前窗口的硬拷贝写入文件“hardcopy.n”。