linux – 使用命令行捕获进程启动后的STDIN / STDERR / STDOUT?

前端之家收集整理的这篇文章主要介绍了linux – 使用命令行捕获进程启动后的STDIN / STDERR / STDOUT?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
谢谢!我的用户案例:我开始了一个冗长的交互式“配置”过程(比如在’屏幕’下),然后意识到我需要总是回答’不’,直到我看到一个特定的关键字.手动执行此操作似乎浪费时间(并不是说我很容易错过关键字..)

因此,似乎我想将STDERR / STDOUT管道(副本)传递给过滤器,
并且还能够注入(控制台)进程的STDIN,
它启动后,使用命令行?有现成的解决方案吗?

以下工具似乎有所帮助.要捕获输出,请使用

strace -ewrite -p $PID

这不是那么干净(显示如下行:写(#,)),但有效!
但它是否说正确处理UTF8?

重定向输出,请执行类似的操作

printf '..input..' >/dev/pts/33

但目前尚不清楚如何找到合适的设备..

解决方法

解决了Linux(显然是Linux特定的):
reptyr -s PID

将进程附加到另一个终端和/或将其输入和输出作为管道公开.

猜你在找的Linux相关文章