前段時間,F(xiàn)edora Magazine 發(fā)表了一篇 介紹 ZSH 的文章,它是 Fedora 默認(rèn)的 bash shell 的替代品。這一次,我們將著重定制它來更有效地使用它。本文中顯示的所有概念也適用于其他 shell,例如 bash。
別名
別名是命令的快捷方式。為那些需要經(jīng)常執(zhí)行,但需要很長時間輸入的長命令創(chuàng)建快捷方式很有用。語法是:
$ alias yourAlias='complex command with arguments'
它們并不總是用來縮短長命令。重要的是,你將它們用于你經(jīng)常執(zhí)行的任務(wù)??赡艿睦樱?/p>
$ alias dnfUpgrade='dnf -y upgrade'
這樣,為了進(jìn)行系統(tǒng)升級,我只需輸入 dnfUpgrade 而不用輸入完整的 dnf 命令。
在終端中設(shè)置別名的問題是,一旦終端會話關(guān)閉,別名就會丟失。要永久設(shè)置它們,請使用資源文件。
資源文件
資源文件(即 rc 文件)是在會話或進(jìn)程開始時(每個用戶在開啟新終端窗口或啟動 vim 等新程序時)加載的配置文件。對于 ZSH,資源文件是 .zshrc,對于 bash,它是 .bashrc。
要使別名成為永久別名,你可以將它們放入資源文件中。你可以使用你選擇的文本編輯器編輯資源文件。這里使用 vim:
$ vim $HOME/.zshrc
或者對于 bash:
$ vim $HOME/.bashrc
請注意,資源文件的位置是相對于家目錄指定的。這是 ZSH(或 bash)默認(rèn)為每個用戶查找該文件的位置。
還有一種是將你的配置放在任何其他文件中,然后讀取它:
$ source /path/to/your/rc/file
同樣,在會話中直接讀取它只會將其應(yīng)用于會話,因此要使其永久化,請將 source 命令添加到資源文件中。將文件放在不同位置的優(yōu)點是你可以隨時讀取它。這在共享環(huán)境中很有用。
環(huán)境變量
環(huán)境變量是分配了特定名稱的值,你可以在腳本和命令中調(diào)用它們。它們以美元符號($)開始。其中最常見的是指向主目錄的 $HOME。
顧名思義,環(huán)境變量是你環(huán)境的一部分。使用以下語法設(shè)置變量:
$ http_proxy="http://your.proxy"
要使其成為環(huán)境變量,請使用以下命令將其導(dǎo)出:
$ export $http_proxy
要查看當(dāng)前設(shè)置的所有環(huán)境變量,請使用 env 命令:
$ env
該命令輸出會話中可用的所有變量。要演示如何在命令中使用它們,請嘗試運行以下 echo 命令:
$ echo $PWD/home/fedora$ echo $USERfedora
這里發(fā)生了變量擴(kuò)展,即存儲在變量中的值在命令中使用。
另一個有用的變量是 $PATH,它定義了 shell 查找二進(jìn)制文件的目錄。
$PATH 變量
有許多對于操作系統(tǒng)很重要的目錄或文件夾(在圖形環(huán)境中調(diào)用它們的方式)。某些目錄設(shè)置為保存可直接在 shell 中使用的二進(jìn)制文件。這些目錄在 $PATH 變量中定義。
$ echo $PATH/usr/lib64/qt-3.3/bin:/usr/share/Modules/bin:/usr/lib64/ccache:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/usr/libexec/sdcc:/usr/libexec/sdcc:/usr/bin:/bin:/sbin:/usr/sbin:/opt/FortiClient
當(dāng)你希望在 shell 中訪問自己的二進(jìn)制文件(或腳本)時,這會有幫助。