#author("2020-08-16T01:14:29+09:00","","")
#author("2020-08-16T01:16:45+09:00","","")
#navi(../)
* タブキーによる補完で$にエスケープ文字が追加されるのを停止する方法 [#l6d0e4f0]

WSL(Windows Subsystem for Linuxをインストールし、タブキーで補完がされる ''bash-completion'' パッケージをインストールしました。~
以下のようなコマンドを入力しTabキーを押すと…
 $ vi $HOME/.bash
$の前にエスケープ(バックスラッシュ)が挿入されてしましました。
 $ vi \$HOME/.bash
この現象を停止する手順を以下に記します。

#contents

#htmlinsert(linux_ads_top.html)

* 動作確認環境 [#jed5f0cd]
-Debian WSL1
 $ 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

* 対処方法 [#ga9e48e1]
以下のコマンドを実行するか、$HOME/.bashrc(など)に追記してください。
 shopt -s direxpand

** ''shopt -s direxpand'' 設定前 [#jddd7787]
+ 以下のように入力し…
#ref(01.png)
#br
+ タブキーを押すと、$がエスケープされます。
#ref(02.png)

** ''shopt -s direxpand'' 設定後 [#cfb96cfa]
以下のコマンドを実行したときの動作です。
 shopt -s direxpand
+ コマンドを実行し、上記の設定前と同様の入力をします。
#ref(11.png)
#br
+ タブキー押すと$HOMEに設定されている内容が展開されます。
#ref(12.png)
#br

* タブキーによる補完 [#l165cb9d]
タブキーによる補完ができない場合は、bash-completionがインストールされていません。~
Debian系(Ubuntu)であれば、以下のコマンドでインストールしてください。
 sudo apt install bash-completion

以上、bashでタブキーを押すと、$の前にエスケープ文字が付いてしまう場合の対処方法でした。

#htmlinsert(linux_ads_btm.html)


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS