ある端末セッションから別の端末セッションに端末出力を指示しています。セッションが出力を受信すると、プロンプトは消えます。 Enter を押すとプロンプトが返されます。
プロンプトを自動的に復元する方法に関する提案はありますか?
例えば。
# ttys001
$ echo -e 'Notice that the prompt is not restored\ntill after pressing Enter.' > /dev/ttys002
$
# ttys002
$ Notice that the prompt is not restored
till after pressing Enter.
答え1
短い答え - 期待どおりに動作しますが、そうすることはできません。
プロンプトは実際に「消えない」。それでもそこにいて、コマンドを待っています。端末にコマンド(または他の項目)を入力するときにキーを押すと、その文字だけが入力として送信され、実際にキーは画面に表示されません。端末はすぐに出力として画面に表示するので、キーを押すと文字が表示されるように見えますが、実際には双方向の「会話」です。同様に、s001からs002の端末に何かをエコーすると、実際に何も中断したり、プロンプトを無効にすることなく、その端末の出力に文字をエコーすることになります。 s001で実行した直後にs002でEnterを押す前にls
s002(または他のコマンド)を入力すると、この内容を確認できます。echo
あなたのメッセージはまだ存在し、あなたを待っています。画面に何かを追加しました。