zsh 簡單高效使用技巧

1. 補全

zsh 的命令補全功能非常強大,可以補齊路徑,補齊命令,補齊參數等。(請問你記住 tar 的所有參數了嗎,只要 tar -加 tab 鍵)

按下 tab 鍵顯示出所有待選項後,再按一次 tab 鍵,即進入選擇模式,進入選擇模式後,按 tab 切向下一個選項,按 shift+tab 鍵切向上一個選項,ctrl+f/b/n/p 可以向前後左右切換

以前殺進程是 ps aux | grep xxx 查進程的 PID,然後 kill PID。有了 zsh,直接 kill xxx 然後按下 tab 鍵即可~

2. 別名

zsh 不僅支持普通 alias,還支持針對文件類型的 alias。我配置的文件類型 alias 如下:

alias -s gz='tar -xzvf'
alias -s tgz='tar -xzvf'
alias -s zip='unzip'
alias -s bz2='tar -xjvf'
alias -s php=vi
alias -s py=vi
alias -s rb=vi
alias -s html=vi
alias gcid="git log | head -1 | awk '{print substr(\$2,1,7)}' | pbcopy"

配置完畢之後,在 zsh 下直接輸入xxx.rb,將自動用 vi 打開,直接輸入xxx.tgz,將直接按照tar -xzvf解壓。最後一個gcid將當前 git 項目的第一個 commit 的 id 複製到系統剪切板(pbcopy是 Mac 下的複製到系統剪切板命令,linux 請參考相應的發行版更改),在執行 rebase 的時候特別方便。

3. 跳轉

zsh 的目錄跳轉更爲智能,你無需輸入cd,直接輸入路徑即可。..表示後退一級目錄,../../表示後退兩級,依次類推。(…的作用和../../相同)

輸入d,將列出當前 session 訪問過的所有目錄,再按提示的數字即可進入相應目錄。

~
> d
0   ~
1   ~/Applications
2   ~/.proxychains
3   /opt/homebrew-cask/Caskroom

~
> 1
~/Applications

4. 歷史記錄

zsh 的歷史記錄跨 session,可以共享。歷史記錄支持受限查找。比如,輸入git,再按向上箭頭,會搜索用過的所有 git 命令。
通配符搜索

ls *.png 查找當前目錄下所有 png 文件,ls **/*.png 遞歸查找。

參考:http://wulfric.me/2015/08/zsh/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章