普通のCDの代わりに自分だけの機能を作りました。
function cd {
builtin cd "$@" && ls -F
}
これはこのようなコマンドを使用するとうまく機能しますcd someDir/subDir
が、zshのauto_cdを介してディレクトリを変更すると機能しませんsomeDir/subDir
。
呼び出されるコマンドをカスタマイズする方法はありますかauto_cd
?
答え1
ディレクトリを変更するときにいくつかのコマンドを実行する一般的な方法は、chpwd
フック関数(または適切に名前付き配列内の関数の名前付きリストchpwd_functions
)を使用することです。
% function chpwd () { pwd }
% cd ~/tmp
/Users/jdoe/tmp
% pushd /etc
/etc ~/tmp
/etc
% chpwd_functions=( chpwd_do_ls )
% function chpwd_do_ls () { ls }
% cd /
/
Applications ...