观察另一个进程的stdout

时间:2010-08-05 15:05:03

标签: linux pipe stdout

以下是假设情景: 我在连接到方框A的某些硬件上运行测试脚本,我有root访问权限。此测试脚本需要最少的用户输入(每半小时左右翻转一次开关)。大约一个半小时进入测试过程,我意识到这个脚本需要很长很长时间才能完成,达到八小时。方框A位于一个非常寒冷,响亮的服务器房间,通常没有那么有趣的物理占用。 Box B位于我的办公室,我有一把舒适的椅子和无尽的热袋。我想要一些方法来监视框A中ssh会话中框A上运行的进程的输出,所以我知道何时去翻转开关,但我不想重新开始测试过程。如果我知道测试将花费这么长时间才完成,我会将其输出传输到日志文件并从我的盒子B ssh会话中拖出该文件。如果我知道在框A上运行的进程的PID,是否可以从另一个会话中观察该进程的标准输出?

当然,我可以在方框A上运行vnc并从方框B登录以查看输出,但这违背了这个假设的目的,即了解更多关于进程管道,stdout和输出通常在Linux环境中工作。

思想?

2 个答案:

答案 0 :(得分:3)

答案 1 :(得分:0)

您可能需要查看expect 它对于自动化这些类型的交互很有用。

您还可以将脚本的输出重定向到文件,并从另一个ssh会话监视该文件。我敢打赌,stackoverflow上的聪明人可以为其他6种其他方式命名。 :)