首頁 > shell教程 閱讀:0更新時間:2020-03-28 02:16:22

如何編寫自己的Shell配置文件(配置腳本)?

學習了《shell配置文件的加載》一節,讀者應該知道 Shell 在登錄和非登錄時都會加載哪些配置文件了。對于普通用戶來說,也許 ~/.bashrc 才是最重要的文件,因為不管是否登錄都會加載該文件。

我們可以將自己的一些代碼添加到 ~/.bashrc,這樣每次啟動 Shell 都可以個性化地配置。如果你有代碼潔癖,也可以將自己編寫的代碼放到一個新文件中(假設叫 myconf.sh),只要在 ~/.bashrc 中使用類似. ./myconf.sh的形式將新文件引入進來就行了

使用 source 命令引入其它代碼文件時有一些細節需要注意,我們將在《Shell模塊化》一節中展開討論。

實例1:給 PATH 變量增加新的路徑

你曾經是否感到迷惑,Shell 是怎樣知道去哪里找到我們輸入的命令的?例如,當我們輸入 ls 后,Shell 不會查找整個計算機系統,而是在指定的幾個目錄中檢索(最終在 /bin/ 目錄中找到了 ls 程序),這些目錄就包含在 PATH 變量中。

當用戶登錄 Shell 時,PATH 變量會在 /etc/profile 文件中設置,然后在 ~/.bash_profile 也會增加幾個目錄。如果沒有登錄 Shell,PATH 變量會在 /etc/bashrc 文件中設置。

如果我們想增加自己的路徑,可以將該路徑放在 ~/.bashrc 文件中,例如:

PATH=$PATH:$HOME/addon

將主目錄下的 addon 目錄也設置為系統路徑。假如此時在 addon 目錄下有一個 getsum 程序,它的作用是計算從 m 累加到 n 的和,那么我們不用 cd 到 addon 目錄,直接輸入 getsum 命令就能得到結果。

在《Shell命令的本質到底是什么》一節中我已經給出了 getsum 程序及其源代碼,有興趣的讀者可以猛擊這里下載。下載完成后請配置環境變量,然后輸入如下的命令就可以得到結果:

[c.biancheng.net]$ getsum -s 1 -e 100
5050

-s選項表示起始(start)數字,-e選項表示終止(end)數字,以上命令用來計算從 1 累加到 100 的和。

實例2:修改命令提示符的格式

在《修改linux命令提示符》一節中我曾提到,修改 PS1 變量的值就可以修改命令提示符的格式,但是那個時候大家還不了解 Shell 啟動文件,所以只能臨時性地修改,并不能持久。

現在我們已經知道,在 ~/.bashrc 文件中修改 PS1 變量的值就可以持久化,每個使用 Shell 的用戶都會看見新的命令提示符。

將下面的代碼添加到 ~/.bashrc 文件中,然后重新啟動 Shell,命令提示符就變成了[c.biancheng.net]$ 。

PS1="[c.biancheng.net]\$ "

beylze編程學院,一個分享編程知識和seo優化知識的網站。跟著beylze一起學習,每天都有進步。

通俗易懂,深入淺出,一篇文章只講一個知識點。

文章不深奧,不需要鉆研,在公交、在地鐵、在廁所都可以閱讀,隨時隨地漲姿勢。

文章不涉及代碼,不燒腦細胞,人人都可以學習。

當你決定關注beylze(公眾號:beylze),你已然超越了90%的其他從業者!

相關文章

優秀教程

国产亚洲欧美日韩