是否可以从另一个进程控制 xterm(或者特别是 xterm 启动的进程)?

是否可以从另一个进程控制 xterm(或者特别是 xterm 启动的进程)?

如果我像这样使用 xterm 启动一个进程(其中 omxplayer 是 xterm 正在启动的进程):

xterm -fullscreen -fg black -bg black -e omxplayer -o hdmi -r %f

我是否可以通过不同的进程写入 xterm 的标准输入来控制 omxplayer?如果是这样,怎么办?

(我对 Linux 术语非常不熟悉,所以如果我说得不正确,请原谅。)

更新

根据 @strugee 的评论,我的目标不是写入 xterm 的标准输入,而是写入 omxplayer 的标准输入。

答案1

screen伪tty运行方式

您需要在其中运行命令中介 tty 管理器

screen -d -m omxplayer -o hdmi -r %f

xterm -fullscreen -fg grey -bg black -e screen -R

这使您可以断开并重新连接屏幕随时:点击Ctrl+ a,即可d从屏幕会话中分离并screen -R在任何终端控制台中重新连接。

查看man screen更多信息。

答案2

为了写入 omxplayer 的标准输入,您可以这样做:

echo '你好'> /proc/$(pidof omxplayer)/fd/1

更新

我之前的建议记录不全而且是错误的,对此我深表歉意。

这个链接包含指向某些的指针项目尝试通过其他方式控制 omxplayer,但他们通常需要直接运行它,而不需要 xterm。

相关内容