我正在运行一个分离screen
会话,并使用 向其中运行命令screen -X
,如下所示:
screen -S $SESSION -X <command>
这很好用,不过我希望能够在不进入屏幕的情况下捕获命令的输出。有没有办法从命令行转储历史记录?
作为一种解决方法,我尝试通过执行以下操作来打开会话日志
screen -L -S $SESSION -X <command>
但它似乎没有创建日志文件。
因此,总而言之,是否可以转储正在运行的分离屏幕会话的屏幕历史记录或者是否可以打开或关闭正在运行的分离会话的日志记录?
答案1
要启动启用了日志记录的屏幕,请使用
screen -L <command>
在现有屏幕上启用日志记录
screen -X log
如果有多个正在运行的屏幕,你可能需要使用 -S 指定哪个屏幕
日志将包含启用日志记录后屏幕发送到标准输出的所有内容。您可能需要删除 screenlog.X 并重新启用日志记录以获取最新的输出。