2017-08-14 10 views
0

私はbashスクリプトを持っており、xtermにログを保存し、いつでもエコーを送信できるようにしたいと考えています。外部のxTermにechoコマンドを送信する

どうすればよいですか?

+0

あなた自身がこの問題を解決しようとしていることを調査して教えてください。 – quinz

答えて

0

xtermセッションの変数GPG_TTYを確認してください。これは、このメソッドはGNU Pinentryをサポートする端末のために利用可能であるべきである

GPG_TTY=/dev/pts/2 

と同様の値を持つ必要があります。現在の端末名を決定する

別のオプションは、あなたのbashスクリプトは、この行のコマンド

echo "Hello, world!" > /dev/pts/2 

を実装している場合、最後の方法は、今だけのLinux

に適用されます

readlink /proc/self/fd/0 

を使用することですxterm画面に表示されます。

+0

xTermセッションには変数 'GPG_TTY'はありませんが、' echo -e "\ e [91; 1mTest">/dev/pts/1'が動作しました。どうすれば正しい/ dev/pts番号を見つけることができますか? –

+0

@JacobCollins投稿を更新しました。あなたはxtermコマンドプロンプトから 'readlink/proc/self/fd/0'を発行することができます –

+1

ありがとう、それはうまくいくようでしたが、もっと簡単な方法を見つけました:)とにかくおかげです –

1

私はxtermをwhileループで実行して画面をクリアし、ログファイルの内容を読んだり、1秒間ポーズしたりして再びループすることで、コンソールを作りました。

echo -e "\e[91;1mTest" >> ${0}-LOG.txt 

とコンソールには、各秒を更新します:

xterm -T Console -e "while true: do cls && cat ${0}-LOG.txt && sleep 1; done" 

コンソールに何かを送信するために続いて:ここではコマンドでした。

関連する問題