在 Linux 文件系統(tǒng)中導航的技巧
無論你是在文件系統(tǒng)中四處查看、尋找文件還是嘗試進入重要目錄,Linux 都可以提供很多幫助。在本文中,我們將介紹一些技巧,使你可以在文件系統(tǒng)中移動,查找和使用所需的命令也更加輕松。
添加到 $PATH
確保你不必花費大量時間在 Linux 系統(tǒng)上查找命令的最簡單、最有用的方法之一就是在 $PATH 變量中添加適當?shù)哪夸?。但是,添加?$PATH 變量中的目錄順序非常重要。它們確定系統(tǒng)在目錄中查找要運行命令的目錄順序–在找到第一個匹配項時停止。
例如,你可能希望將家目錄放在第一個,這樣,如果你創(chuàng)建的腳本與其他可執(zhí)行文件有相同的名稱,那么只要輸入該腳本的名稱,它便會運行。
要將家目錄添加到 $PATH 變量中,可以執(zhí)行以下操作:
- $ export PATH=~:$PATH
~ 字符代表家目錄。
如果將腳本保存在 bin 目錄中,下面的會有效:
- $ export PATH=~/bin:$PATH
然后,你可以運行位于家目錄中的腳本,如下所示:
- $ myscript
- Good morning, you just ran /home/myacct/bin/myscript
重要提示:上面顯示的命令會添加到你的搜索路徑中,因為 $PATH(當前路徑)被包含在內(nèi)。它們不會覆蓋它。你的搜索路徑應該在你的 .bashrc 文件中配置,任何你打算永久化的更改也應該添加到那里。
使用符號鏈接
符號鏈接提供了一種簡單而明顯的方式來記錄可能經(jīng)常需要使用的目錄的位置。例如,如果你管理網(wǎng)站的內(nèi)容,那么可能需要通過創(chuàng)建如下鏈接來使你的帳戶“記住”網(wǎng)頁文件的位置:
- ln -s /var/www/html www
參數(shù)的順序很重要。第一個(/var/www/html)是目標,第二個是你創(chuàng)建的鏈接的名稱。如果你當前不在家目錄中,那么以下命令將執(zhí)行相同的操作:
- ln -s /var/www/html ~/www
設置好之后,你可以使用 cd www 進入 /var/www/html。
使用 shopt
shopt 命令還提供了一種讓移動到其他目錄更加容易的方法。當你使用 shopt 的 autocd 選項時,只需輸入名稱即可轉(zhuǎn)到目錄。例如:
- $ shopt -s autocd
- $ www
- cd -- www
- /home/myacct/www
- $ pwd -P
- /var/www/html
- $ ~/bin
- cd -- /home/myacct/bin
- $ pwd
- /home/myacct/bin
在上面的第一組命令中,啟用了 shopt 命令的 autocd 選項。輸入 www,就會調(diào)用 cd www 命令。由于此符號鏈接是在上面的 ln 命令示例之一中創(chuàng)建的,因此將我們移至 /var/www/html。 pwd -P 命令顯示實際位置。
在第二組中,鍵入 ~/bin 會調(diào)用 cd 進入在用戶家目錄的 bin 目錄。
請注意,當你輸入的是命令時,autocd 行為將不會生效,即使它也是目錄的名稱。
shopt 是 bash 內(nèi)置命令,它有很多選項。這只是意味著你不必在要進入每個目錄的名稱之前輸入 cd。
要查看 shopt 的其他選項,只需輸入 shopt。
使用 $CDPATH
可能進入特定目錄的最有用技巧之一,就是將你希望能夠輕松進入的路徑添加到 $CDPATH 中。這將創(chuàng)建一個目錄列表,只需輸入完整路徑名的一部分即可進入。
一方面,這可能有點棘手。你的 $CDPATH 需要包含要移動到的目錄的父目錄,而不是目錄本身。
例如,假設你希望僅通過輸入 cd html 就可以移至 /var/www/html 目錄,并僅使用 cd 和簡單目錄名即可移至 /var/log 中的子目錄。在這種情況下,此 $CDPATH 就可以起作用:
- $ CDPATH=.:/var/log:/var/www
你將看到:
- $ cd journal
- /var/log/journal
- $ cd html
- /var/www/html
當你輸入的不是完整路徑時,$CDPATH 就會生效。它向下查看其目錄列表,以查看指定的目錄是否存在于其中一個目錄中。找到匹配項后,它將帶你到那里。
在 $CDPATH 開頭保持 . 意味著你可以進入本地目錄,而不必在 $CDPATH 中定義它們。
- $ export CDPATH=".:$CDPATH"
- $ Videos
- cd -- Videos
- /home/myacct/Videos
在 Linux 文件系統(tǒng)鍵切換并不難,但是如果你使用一些方便的技巧輕松地到達各個位置,那你可以節(jié)省一些大腦細胞。