學科:Shell/Zsh
功能
編輯路徑別名
編輯需要在配置文件(通常是 .zshrc)中先定義好規則,形如:
hash -d sortcut_name=path
配置應用後,直接使用 ~ sortcut_name (甚至直接輸 sortcut_name 回車就行了)就可以跳轉到相應目錄
文件類型關聯
編輯zsh 可以指定某種類型的文件用何種命令打開,可以配置文件定義相應的規則,形如:
alias -s rb=mate # 用 TextMate 打开 ruby 文件
技巧
編輯一般性
編輯- Tab 補全顯示的結果列表中可以使用方向鍵移動
- -後接 Tab 可以補全參數
- 命令修正提示中 nyae 的含義是:
- no,不修正
- yes,採納修正意見執行
- abort,終止,取消操作
- edit,返回編輯命令
目錄切換
編輯- 大多數情況 cd 都是可以省略的
- d,可以列出最近訪問的幾個目錄,0 是當前目錄,直接輸入數字 1~9 可以在這幾個目錄間切換
- 直接輸 .. 和 ... 可以快速切換到上層目錄
- cd 後接 n+1 個點,可以往上層跳轉 n 層
最近命令
編輯- r,可以重複執行上一條命令
- zsh_stats,歷史命令排行
命令相關
編輯- kill,輸入進程的命令中單詞的開頭可以匹配符合的命令,比如:
/Applications/Explorer/Google Chrome.app/Contents/Versions/22.0.1229 App,G,Chrome,Ver 都能匹配,区分大小写 chrome,22,oogle 不能匹配
- ls
- 匹配模式得到了增強,如
- ** 表示在子目錄中匹配,例 ls **/*.pdf 匹配目錄及子目錄下所有PDF文件
- @ 匹配符號鏈接,例 ls *(@)
- r,w,x 匹配文件權限,例 ls *(x)
- . 匹配文件,例 ls *(.)
- 例 ls **/(*.md|LICE*),匹配目錄下 md 文件 及 以 LICE 開頭的文件
配置
編輯命令提示符
編輯- 推薦 Powerline 主題,如果使用 oh my zsh,最簡單的安裝方式是用 https://github.com/jeremyFreeAgent/oh-my-zsh-powerline-theme ,然後修改 zshrc 的主題。特殊符號需要安裝特殊字體,https://github.com/Lokaltog/powerline-fonts 有多種合適的字體,安裝字體後修改終端字體即可。
- My Extravagant Zsh Prompt http://stevelosh.com/blog/2010/02/my-extravagant-zsh-prompt/
安裝
編輯OS X 已內建了 zsh,你也可以用 brew 單獨安裝。
yum 的源是 4.3 的(10:18, 19 March 2014 (UTC)),需要從源碼安裝。
參考
編輯- Oh my zsh https://github.com/robbyrussell/oh-my-zsh —— 一大坨配置與主題,默認配置也足夠好用,你值得擁有
- 官方文檔 https://zsh.sourceforge.net/Doc/
- http://zshwiki.org/
配置樣例
編輯- http://hi.baidu.com/jacksg78/item/9b595577a09ea319714423d6 —— 比較全面的一個配置,除了一些基本的別名、開關,還覆蓋了鍵綁定、自定義函數
- Zsh 技巧三則 http://linuxtoy.org/archives/zsh_per_dir_hist.html —— 側重歷史記錄,cd 補全,補全開關