Windows からリモートでアクセスされる Linux の bash スクリプトでバックスペース キーを機能させるにはどうすればよいですか?

Windows からリモートでアクセスされる Linux の bash スクリプトでバックスペース キーを機能させるにはどうすればよいですか?

CentOS 7.4 には、ユーザーが変数を入力し、入力した内容が正しいかどうかを確認できる次の行を含む bash スクリプトがあります。

read -p "Enter the name of the database: " dbname
echo "You entered: $dbname"
read -p "Is that correct? Enter y or n: " confirm && [[ $confirm == [yY] || $confirm == [yY][eE][sS] ]] || exit 1

コマンド プロンプト アプリを使用して Windows 10 から CentOS マシンに SSH 接続してスクリプトを実行すると、変数を入力するときに文字を間違って入力してしまい、バックスペース キーが必要になることがあります。ただし、バックスペース キーを押そうとすると、コマンド プロンプト アプリは と入力するだけです^H

この設定でバックスペースが実際に機能するように、スクリプトを変更するか、CentOS または Windows のどこかの設定を変更するにはどうすればよいですか?

答え1

Windows で使用しているものは何ですか? 一般的なクライアントは Putty です。Putty で文字マッピングを定義できます。

Linuxでは設定を変更できます。

stty erase ^H

答え2

Windows コマンド プロンプトはちょっと変わっているようです。PuTTY を使用して CentOS ボックスに SSH 接続すると、read問題なくプロンプトでバックスペース キーを押すことができます。

関連情報