Mint 18.3以降、bash_completion
コンテンツは/etc/
無効になりました。再度有効にするために、~/.bash_completion
次の内容を含むファイルを作成しました。
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi
それから私のファイルからインポートします~/.bashrc
。
注:~/.bash_completion
実際にはシンボリックリンクです~/Source/dotfiles/bash_completion
。
別のターミナルウィンドウを開くと、Ctrl + Cを押すまでウィンドウがフリーズし、シェルプロンプトは表示されません。
繰り返しますが、 を実行するとsource /etc/bash_completion
同じ動作が発生します。
これを実行すると、set -x
無限ループに入ることができることがわかります。
検索してみましたが/etc/
ソースがありません~/.bash_completion
。
どうなりますか?
ベストアンサー1
さらに検索すると、このファイルのソースである/usr/share/bash-completion/bash_completion
ファイルが表示されます。~/.bash_completion
したがって、無限ループ。
カスタマイジングのために作ったようですが~/.bash_completion
、いいえ.bashrc
ファイルを独立した部分に分割する方法です。
bash完了をロードするためのスクリプトをどこかに入れて~/.bashrc
呼び出すだけです。