バージョン2

バージョン2

私の言うことは、プログラムが実行されているとき(例えば、Telnet)画面に何かが書かれたときに入力したすべてのテキストが失われるということです。たとえば、チャットサーバーで

私は入る

>こんにちは、聞きたいです。

突然文字列を受け取りましたが、画面は次のようになります。

>こんにちは、聞いてみたかったです。こんにちは?

文を書き続けてEnterキーを押すと、文字列を正常に送信できますが、入力内容は次のように下に移動したいと思います。

こんにちは、どうしたの?

>「お願いしたい」

どうすればいいですか?私はbashとlxterminalを使用します

修正する したがって、ここに迅速かつ汚れた解決策があります。入力が失われるたびにキーを押して^R復元します。

ベストアンサー1

バージョン2

バージョン1(下)は、入力が親端末に送信されますが処理されないため機能しません。だからもう一度試しました。プログラムを正しく入力するには、入力端末でプログラムを実行する必要があります。次に、出力を別の端末に割り当てます。うまくいくべきだと思いますが、まだテストしていません(Madサーバーはありません)。

xterm -e bash -c "telnet mud > '$(readlink -f /dev/stdin)'"

バージョン1

私は入力のために別のターミナルを使用しました。

次のように入力端子を作成します。

xterm -e bash -c "cat > '$(readlink -f /dev/stdin)'"

どのように動作しますか?

  • まず、現在readlink -f /dev/stdinどの端末にいるかを確認してください。これはトレースのシンボリックリンクを介して行われます/dev/stdin。これは、表示されるプロセスによって動的です(変更されます)。
  • これで、コマンドは次のようになります。xterm -e bash -c "cat > '/dev/pts/x'"
  • 次のxtermが起動して起動し、この端末へのリダイレクトがbash開始されます。cat

おすすめ記事