Bash用の設定ファイルと設定ファイルがありますが、そのファイルを別のサーバーにコピーしたため、バックスペースを押すだけではテキストを削除できません。テキストを削除するには、Shift + バックスペースを押す必要があります。
復元するにはどのパラメータを変更する必要がありますか?
答え1
一般的に(条約使用している特定のシステムの場合)このbackspaceキーはASCII BS(^H
)とDEL(^?
)を送信します。
一部の端末エミュレータは、^H
Shift修飾子を使用するとASCII BS()とDEL()を切り替えます。^?
一部はそうではありません。明らかにsshに使用するプログラムはそうではありません。
次の行を考慮すると、次のようになります.profile
。
stty erase "^H" kill "^U" intr "^C" eof "^D" susp "^Z"
端末は通常(ASCII DEL)を送信しているようですが、(ASCII BS)を^?
期待するように指示しています。^H
ただし、対応するキーを使用して変更する^H
とbackspace、端末がに切り替わりますshift。使えた
stty erase "^?" kill "^U" intr "^C" eof "^D" susp "^Z"
そしてより良い結果を得ました。
答え2
答え3
もう1つの可能性はterminfoデータの損失です。 chrootを使用すると、これが起こりました。これフォーラム投稿この問題を解決するのに役立ちましたが、Stackexchangeで同様の操作参照が見つからなかったため、ここにあります。
/usr/share/terminfo/ ディレクトリを chroot ディレクトリ /usr/share/terminfo にコピーすれば十分です。