32
因此,我已經讓ZSH做了所有這些很酷的東西,但是如果我可以在每次調用'ls -a'後隱式運行'ls -a'光盤'。我認爲這必須放在.zlogin文件或.aliases文件中,我不確定最佳解決方案是什麼。思考?參考資料?ZSH:在每張CD後自動運行ls
因此,我已經讓ZSH做了所有這些很酷的東西,但是如果我可以在每次調用'ls -a'後隱式運行'ls -a'光盤'。我認爲這必須放在.zlogin文件或.aliases文件中,我不確定最佳解決方案是什麼。思考?參考資料?ZSH:在每張CD後自動運行ls
把下列句子變成.zshrc:
function cd() {
emulate -LR zsh
builtin cd [email protected] &&
ls -a
}
編輯:它使用: 看文檔(zshbuiltins
的cd
內置或hook functions說明)我發現了一個更好的辦法後, chpwd
功能:
function chpwd() {
emulate -L zsh
ls -a
}
或使用chpwd_functions
陣列:
function list_all() {
emulate -L zsh
ls -a
}
chpwd_functions=(${chpwd_functions[@]} "list_all")
簡短版本。
autoload -U add-zsh-hook
add-zsh-hook -Uz chpwd(){ ls -a; }
這工作得很好,我忘了提及我有auto_cd打開,所以這隻有當我明確地調用'cd'時纔有效。有沒有辦法讓我在改變目錄的時候以這種方式行事? – drmanitoba 2010-10-19 14:56:13
@drmanitoba查看更新的答案。 – ZyX 2010-10-19 16:27:43
什麼是「模擬-LR zsh」? – moo 2012-01-18 01:11:23