fish[用於類Unix系統的Shell]

fish[用於類Unix系統的Shell]

fish是一個用戶友好的shell全稱Friendly Interactive Shell ,可用於如 Linux 這樣的 Unix 類作業系統中。fish 當前具有語法高亮顯示、高級的 Tab 鍵和→鍵自動補全、可找到的幫助、修訂的shell語法、以及其他許多特性。

fish是一個用戶友好的命令行shell,全稱Friendly Interactive Shell,可用於如 Linux 這樣的 Unix 類作業系統中。fish 當前具有語法高亮顯示、高級的 Tab 和 → 鍵自動補全、可找到的幫助、修訂的shell語法、以及其他許多特性。fish 的最新版本為 1.21.11,於上月 24 日發布,它已經被包含在許多流行的 Linux 發行版中,如 Debian、Ubuntu、Fedora、Gentoo、Arch 等。如果你對它有興趣,那么可以根據自己所用的發行版本來選擇是直接安裝還是編譯它。

簡單介紹一下它的優點:

1. 自動補全、 語法高亮

bash 的自動補全默認只是補全命令、路徑,如果想補全變數、參數等,通常需要使用複雜的組合鍵,即便您能夠記住它們,快速準確的按下這些組合鍵,也是一種嚴峻的考驗。而fish 的自動補全可以自動識別語法,補全正確的內容。並且具有語法高亮的功能,

比如用 MPLAYER 放 MP3:

mpl<tab>(ayer) -l<tab>(oop) <tab>(0)

-sh<tab>(uffle) -pl<tab>(aylist)

<tab>(mp3_playlist)

一陣猛按 <tab> 鍵,一個蠻長的命令就完成了。

補全結果不唯一時給出的提示中含有簡短的說明,這樣通常也不用看幫助了:)

比如:

mplayer -l

<tab> 後,自動將參數補全為 -lo 然後給出提示

-{lo}adidx (Load index from file) -{lo}op

(Loop playback) {花括弧中為青色文字}

它的語法高亮功能十分有用,如果你輸入的命令是正確的,則用青色顯示,正確的參數用白色顯示,錯誤的則一律用紅色。

2. 方便的歷史紀錄搜尋

還是上面的那個命令

mplayer -loop 0 -shuffle -playlist

mp3_playlist

用上翻配合下翻瀏覽命令歷史,直到找到這個命令,當然那樣太慢了。還可以輸入以上命令中的某一部分,如 uffle 只要翻一次就可以找到了。

(還可以 META+上翻在已輸入部分中插入某一歷史單詞)

3. 資料夾歷史紀錄

dirh (dir history)就可以顯示當前會話中進入的資料夾紀錄使用 prevd 和 nextd 跳轉命令行假如曾進入過 1 2 3 4 5 這幾個資料夾, prevd 4 可以讓你在 5 中直接跳到 1

4. 其它的功能,fish 基本是兼容 bash 的。

鍵綁定也非常的相似,少數的鍵綁定不盡一致,

例如: 刪除游標前的一個字元 (bash 為退格鍵,不方便)

在Linux中Shell是可以無窮變化的,可供選擇的有非常多種的如:sh,csh,bash,fish等。

相關詞條

熱門詞條

聯絡我們