WSL(Windows Subsystem for Linuxをインストールし、タブキーで補完がされる bash-completion パッケージをインストールしました。
以下のようなコマンドを入力しTabキーを押すと…
$ vi $HOME/.bash
$の前にエスケープ(バックスラッシュ)が挿入されてしましました。
$ vi \$HOME/.bash
この現象を停止する手順を以下に記します。
$ cat /proc/version Linux version 4.4.0-19041-Microsoft (Microsoft@Microsoft.com) (gcc version 5.4.0 (GCC) ) #1-Microsoft Fri Dec 06 14:06:00 PST 2019 $ lsb_release -d Description: Debian GNU/Linux 10 (buster) $ cat /etc/debian_version 10.5
以下のコマンドを実行するか、$HOME/.bashrc(など)に追記してください。
shopt -s direxpand
以下のコマンドを実行したときの動作です。
shopt -s direxpand
タブキーによる補完ができない場合は、bash-completionがインストールされていません。
Debian系(Ubuntu)であれば、以下のコマンドでインストールしてください。
sudo apt install bash-completion
以上、bashでタブキーを押すと、$の前にエスケープ文字が付いてしまう場合の対処方法でした。