Linux中國

在 Linux 文件系統中導航的技巧

無論你是在文件系統中四處查看、尋找文件還是嘗試進入重要目錄,Linux 都可以提供很多幫助。在本文中,我們將介紹一些技巧,使你可以在文件系統中移動,查找和使用所需的命令也更加輕鬆。

添加到 $PATH

確保你不必花費大量時間在 Linux 系統上查找命令的最簡單、最有用的方法之一就是在 $PATH 變數中添加適當的目錄。但是,添加到 $PATH 變數中的目錄順序非常重要。它們確定系統在目錄中查找要運行命令的目錄順序–在找到第一個匹配項時停止。

例如,你可能希望將家目錄放在第一個,這樣,如果你創建的腳本與其他可執行文件有相同的名稱,那麼只要輸入該腳本的名稱,它便會運行。

要將家目錄添加到 $PATH 變數中,可以執行以下操作:

$ export PATH=~:$PATH

~ 字元代表家目錄。

如果將腳本保存在 bin 目錄中,下面的會有效:

$ export PATH=~/bin:$PATH

然後,你可以運行位於家目錄中的腳本,如下所示:

$ myscript
Good morning, you just ran /home/myacct/bin/myscript

重要提示:上面顯示的命令會添加到你的搜索路徑中,因為 $PATH(當前路徑)被包含在內。它們不會覆蓋它。你的搜索路徑應該在你的 .bashrc 文件中配置,任何你打算永久化的更改也應該添加到那裡。

使用符號鏈接

符號鏈接提供了一種簡單而明顯的方式來記錄可能經常需要使用的目錄的位置。例如,如果你管理網站的內容,那麼可能需要通過創建如下鏈接來使你的帳戶「記住」網頁文件的位置:

ln -s /var/www/html www

參數的順序很重要。第一個(/var/www/html)是目標,第二個是你創建的鏈接的名稱。如果你當前不在家目錄中,那麼以下命令將執行相同的操作:

ln -s /var/www/html ~/www

設置好之後,你可以使用 cd www 進入 /var/www/html

使用 shopt

shopt 命令還提供了一種讓移動到其他目錄更加容易的方法。當你使用 shoptautocd 選項時,只需輸入名稱即可轉到目錄。例如:

$ 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,就會調用 cd www 命令。由於此符號鏈接是在上面的 ln 命令示例之一中創建的,因此將我們移至 /var/www/htmlpwd -P 命令顯示實際位置。

在第二組中,鍵入 ~/bin 會調用 cd 進入在用戶家目錄的 bin 目錄。

請注意,當你輸入的是命令時,autocd 行為將不會生效,即使它也是目錄的名稱。

shopt 是 bash 內置命令,它有很多選項。這只是意味著你不必在要進入每個目錄的名稱之前輸入 cd

要查看 shopt 的其他選項,只需輸入 shopt

使用 $CDPATH

可能進入特定目錄的最有用技巧之一,就是將你希望能夠輕鬆進入的路徑添加到 $CDPATH 中。這將創建一個目錄列表,只需輸入完整路徑名的一部分即可進入。

一方面,這可能有點棘手。你的 $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 文件系統鍵切換並不難,但是如果你使用一些方便的技巧輕鬆地到達各個位置,那你可以節省一些大腦細胞。

via: https://www.networkworld.com/article/3533421/tricks-for-getting-around-your-linux-file-system.html

作者:Sandra Henry-Stocker 選題:lujun9972 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國