web-dev-qa-db-ja.com

cdable_varsで 'cd'をbashする:CWDエコーを抑制する方法は?

私は何年もの間Bashshopt cdable_varsオプションを使用してきました。解決にcdable_varsが必要な宛先にcdすると、シェルはCWDをエコーし​​てからプロンプトに戻ります。 不要cdable_varsルックアップが必要な宛先(つまり、正しい完全なスペルのサブディレクトリまたは絶対パス)にcdすると、シェルはCWDをエコーし​​ません。

これはcdable_varsの通常の(文書化されていない)動作ですか?

Cdable_varに移動したことを思い出すのが好きだったので、ある時点でこの動作をアクティブにしたことをかすかに思い出します。今は欲しくないのですが、消す方法がわかりません。

cdビルトインを使用しています(関数やエイリアスはありません)。

プロンプトコマンドフックを使用しますが、set -xで実行すると、プロンプトコマンドが実行される前にcdコマンドとエコーの両方が発生することが示されます。

他に見る場所は?

3
Chap

私はこれを次の醜いハックで扱います:

$ type -a cd
cd is aliased to `cd $1 >/dev/null'
cd is a Shell builtin

つまり、この行を~/.bashrcに追加します。

alias cd='cd >/dev/null' 
2
terdon