他のプロセスでxterm(または具体的にxtermによって開始されたプロセス)を制御することは可能ですか?

他のプロセスでxterm(または具体的にxtermによって開始されたプロセス)を制御することは可能ですか?

次のようにxtermを使用してプロセスを開始すると(ここでomxplayerはxtermが起動されるプロセスです):

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

他のプロセスでxtermの標準入力に書き込むことでomxplayerを制御できますか?それでは、どうすればいいですか?

(Linuxの用語についてはよくわからないので、間違っている場合はご了承ください。)

修正する

@strugeeのコメントによると、私の目標はxtermのstdinに書き込むのではなく、omxplayerのstdinに書き込むことです。

答え1

screen擬似tty実行モード

からコマンドを実行する必要があります。仲介 tty マネージャー

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

比較する

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

これにより、接続を切断して再接続できます。画面いつでも:画面セッションから切り離して端末コンソールに再接続するには、+Ctrlをクリックします。adscreen -R

追加man screen情報。

答え2

omxplayerの標準入力に書き込むには:

echo 'こんにちは'> /proc/$(pidof omxplayer)/fd/1

修正する

以前のアドバイスは文書化も不足しており、間違っていました。これについてお詫び申し上げます。

このリンク一部へのポインタが含まれています。プロジェクト別の方法でomxplayerを制御しようとしましたが、通常はxtermなしで直接実行する必要があります。

関連情報