GNU/Linux >> Linux の 問題 >  >> Linux

Linux ターミナル:入力フィードバックがなくなり、改行が表示されない

reset -c を実行して Joshua Briefman の答えを詳しく説明するには 問題の原因となっている制御文字のみをリセットします:

<ブロック引用>

tsetreset - 端末の初期化

Usage: tset [options] [terminal]

Options:
  -c          set control characters
  -e ch       erase character
  -I          no initialization strings
  -i ch       interrupt character
  -k ch       kill character
  -m mapping  map identifier to type
  -Q          do not output control key settings
  -r          display term on stderr
  -s          output TERM set command
  -V          print curses-version
  -w          set window-size

また、コマンドのマニュアルの次のフォームにも注意してください:

<ブロック引用>

入力が必要な場合があることに注意してください

<LF>reset<LF>

(改行文字は通常は control-J です) 異常な状態ではキャリッジ リターンが機能しなくなる可能性があるため、端末を機能させるために使用します。また、端末はしばしばコマンドをエコーし​​ません。


コマンド reset を実行します 端末を復元する必要があります (参照)。

この問題は通常、バイナリ データを端末 STDOUT にダンプするときに発生します。 受信したエスケープ コードが処理されると、テキストの色の変更、エコーの無効化、文字セットの変更など、あらゆることができます。

これを回避する簡単な方法は、不明なバイナリ データを端末にダンプしないようにすることです。その後、16 進数に変換する必要がある場合は、端末の設定が変更されないようにします。


Linux
  1. Linux コマンドラインまたはターミナルでプロキシ設定を設定する方法

  2. Pythonモジュールはターミナルでは見つかりませんが、Pythonシェル、Linuxでは見つかりません

  3. Linux / ubuntu ターミナルのコマンドラインで ctrl + r

  1. Linuxターミナルで冒険に出かけましょう

  2. Cowsay:Linux ターミナルで楽しむ

  3. Linux コンソールで、出力をラップしない方法

  1. Linuxターミナルでのmvコマンドの5つの使用

  2. Linux 端末からメールを 1 行で送信する

  3. Linux:コマンド ラインでプログラムを閉じます (強制終了ではありません)。