我正在尝试运行 screen 来连接到串行端口。我希望它运行一个命令,然后每 60 秒使用 hardcopy 写入日志文件中显示的内容。
到目前为止我已经完成了以下操作:
screen -S hub /dev/ttyUSB0 115200
这将打开我想要的连接。然后我只需运行
logs 2
这使得机器每 2 秒向屏幕输出一次状态,它只是吐出一堆文本。
我已经成功运行:
screen -S hub -X hardcopy
几次,但有时我最终会得到多个屏幕(甚至不确定为什么),如果我执行 ^A ",我会得到 2-3 个窗口的列表。第一个是 ttyUSB0,然后通常有 1 或 2 个 bash 窗口。
我怎样才能让它自动在 ttyUSB0(我相信是窗口 0)上运行硬拷贝命令?
答案1
解决方案是 -p 选项。
screen -r hub -p 0 -X hardcopy
这样我就可以发送到我想要的屏幕。还弄清楚了 Ctrl-a d 可以返回 shell 而不创建新屏幕,这很有帮助。