技術文檔 2021年6月15日
Linux 中(zhōng)的 PATH 變量存儲了運行命令時應在其中(zhōng)查找可執行文件的目錄的路徑。
abhishek@its-foss:~$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
如您所見,PATH 由多個以冒号 (:) 分(fēn)隔的目錄(如 /usr/local/sbin、/usr/bin 等)組成。
如果你想從系統的任何地方運行一(yī)些可執行文件作爲命令,你應該在 PATH 變量中(zhōng)添加它們的位置。
這在設置開發環境時很常見。例如,假設您下(xià)載并安裝了 Java 和 Maven。爲了使您的程序正常工(gōng)作,您需要在 PATH 中(zhōng)指定 Maven 和 Java 二進制文件的位置。
這個快速教程是關于在 Linux 中(zhōng)設置 PATH。除了這些步驟之外(wài),我(wǒ)還會提到在處理 PATH 時應該注意的事項。
在 Linux 中(zhōng)向 PATH 變量添加新目錄的過程本質上是這樣的:
export PATH=$PATH:your_directory
相關目錄your_directory
的絕對路徑在哪裏。
假設您将 Maven 下(xià)載并解壓縮到主目錄,并且想要将其 bin 目錄添加到 PATH。我(wǒ)們假設這個bin目錄的絕對路徑是/home/abhishek/maven/apache-maven-3.8.0/bin。
這是你應該做的:
導出路徑=$PATH:/home/abhishek/maven/apache-maven-3.8.0/bin
export PATH=$PATH:/home/abhishek/maven/apache-maven-3.8.0/bin
這裏需要注意的地方:
使用新值設置 PATH 後,請檢查 PATH 是否已正确更新。
abhishek@its-foss:~$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/abhishek/maven/apache-maven-3.8.0/bin
您可能想要運行修改了 PATH 的命令或腳本。這将告訴您現在是否正确設置了 PATH。
您已将所需目錄添加到 PATH 變量,但更改是暫時的。如果您退出終端、退出會話或從系統注銷,PATH 将恢複并且更改将丢失。
如果您希望自己對 PATH 變量進行永久更改,則可以将其添加到主目錄中(zhōng)的 .bashrc 文件中(zhōng),假設您使用的是 Bash shell。
您可以使用文本編輯器(如 Nano或 Vim)來完成此任務。
nano ~/.bashrc
如果您希望 Linux 系統上的每個人都可以使用修改後的 PATH 變量,您可以将導出添加到 /etc/profile 文件中(zhōng)。當您是系統管理員并且配置了帶有自定義路徑的系統時,這很合适。
PATH 變量中(zhōng)有幾個目錄。當您運行可執行文件/命令時,您的系統會按照 PATH 變量中(zhōng)提到的相同順序查看目錄。
如果 /usr/local/sbin 在 /usr/bin 之前,則首先在 /usr/local/sbin 中(zhōng)搜索可執行文件。如果找到可執行文件,則搜索結束并執行該可執行文件。
這就是爲什麽您會找到一(yī)些示例,其中(zhōng)在 PATH 中(zhōng)的其他所有内容之前添加了附加目錄:
export PATH=your_directory:$PATH
如果您認爲您的附加目錄應該在所有其他目錄之前搜索,您應該将它添加到 $PATH 之前,否則将它添加到 $PATH 之後。
關鍵詞: