Fish Shell


今天看到阮一峰同學的一篇博客(Fish shell 入門教程),講述的非常詳細、清楚,有興趣的可以直接轉去查看此文,本文僅提供一下個人使用心得。

一、fish shell

想必接觸過類unix(包括windows的dos)的人對shell應該都不陌生。shell對於提高工作效率有非常大的幫助,但是繁雜的語句及命令使得shell使用起來較麻煩。圖形化界面方便一般人的操作,但是效率不夠高。fish shell兼顧了二者的優點,對shell進行了改進,使之更方便使用。具體介紹見fish shell

二、安裝

在其官網中給出了各種系統的安裝方式,本文以Ubuntu為例。安裝命令如下(這就是普通shell):

sudo apt-add-repository ppa:fish-shell/release-2
sudo apt-get update
sudo apt-get install fish

PPA表示Personal Package Archives,也就是個人軟件包集。所以第一行表示添加fish的個人軟件包集,添加之后能獲取到fish的最新版,當然也可以不加此行,直接從ubuntu的源中獲取fish。今日(2017.5.2)實際測試使用ppa安裝的版本為2.5.0,不使用ppa安裝的版本為2.0.0。

三、功能

fish的強大之處就在於其有良好的交互和提示功能,能夠幫助我們少輸很多字母。其對歷史命、命令補全、參數補全、路徑補全、git等都有很好的支持。在Fish shell 入門教程已經介紹的很詳細,可以參考。在這里補充一些細節。

3.1 配置

配置文件存放在~/.config/fish/config.fish中,但是默認情況下並沒有此文件,如果需要在fish啟動的時候添加自定義函數等,可以新建該文件,將函數寫入。

3.2 函數與語法

其語法與普通shell少許相似(關於普通shell語法可以參考我的另一篇文章——shell腳本學習心得),部分概念即繼承了bash又借鑒了其他高級語言程序。

fish的好處在於可以將函數放入上述配置文件中,這樣一些命令的簡寫等就可以直接調用,在shell中可能需要通過設置別名來達到這一點。對於一些循環等操作,使用fish寫腳本將更加容易。

並且fish可以直接在控制台中通過與在IDE中同樣的方式書寫循環等,如:

for file in *
    echo $file
end

上述命令只要逐行輸入即可,當輸入end后fish會自動執行,在bash中無法實現此功能。這樣可以更友好的進行批量操作等。

3.3 退出

直接按CTRL+D退出fish,返回bash。

四、總結

本文簡單介紹了fish,請讀者以阮一峰和官網文檔為主,我在此僅為狗尾續貂。

臨了再講一個程序員的段子。一哥們看一美女很漂亮便跑過去躺到美女腳下,大喊:“姑娘你的男朋友掉了。”。結果就是一腳。。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM