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