作業系統 PATH 環境變數介紹,以及設定 PATH 環境變數
PATH 環境變數
在主流的作業系統中,PATH
環境變數通常包含一組路徑,用於搜尋可執行目標。比如,在 Windows 的命令提示字元中輸入notepad
並按下Enter鍵,命令提示字元會搜尋並執行 notepad,如果目前路徑中不存在,則將依據PATH
提供的路徑進行搜尋,當目標被找到後,搜尋將終止。
PATH 環境變數中的路徑的優先順序
在PATH
提供的多個路徑中,排在前面的會優先進行搜尋,這意味著當某個可執行目標同時位於多個不同的路徑時,路徑排位靠前的目標將被優先找到,其余的路徑則被忽略。
Windows 中的 PATH 環境變數
在 Windows 中,PATH
分別存在於系統環境變數和使用者環境變數,如果在命令提示字元中輸入echo %PATH%
,那麽他將是兩個PATH
變數的組合,其中使用者環境變數中的路徑被放在系統環境變數路徑的後面。無論是兩者中的哪一個,PATH
中包含的路徑應使用;
進行分隔。
設定 Windows 環境變數PATH
的最簡單方式是使用環境變數視窗,不建議采用setx
命令,因為該命令會將路徑限製在 1024 個字元以內。如果你希望通過命令列的方式進行設定,那麽可以嘗試使用 PowerShell。
下面的 PowerShell 命令,為使用者環境變數PATH
增加了一個路徑.\bin\
。
[Environment]::SetEnvironmentVariable('PATH', [Environment]::GetEnvironmentVariable("PATH", "User") + ';.\bin\', 'User')
Windows PATH 環境變數何時被使用?
Windows 命令列一般首先檢視目前路徑是否存在需要執行的目標,只有在目標不存在時,才會使用PATH
提供的路徑搜尋。
設定 Windows 環境變數
關於如何設定 Windows 環境變數,你可以檢視如何設定 Windows 環境變數一節。
UNIX/Linux/macOS 中的 PATH 環境變數
與 Windows 系統不同,UNIX/Linux/macOS 中的PATH
變數需要使用:
來分隔路徑。
雖然擁有大量的衍生版本,但在 UNIX/Linux/macOS 中設定PATH
變數的方法是類似的,需要在某些特定的檔案中寫入export
命令。這些檔案包括但不限於,/etc/profile
,~/.profile
,~/.bash_profile
,~/.bashrc
,你可以使用已安裝的編輯器來編輯他們,比如,輸入命令sudo vi /etc/profile
編輯檔案/etc/profile
。
下面是一條export
命令的範例,他為環境變數PATH
增加了路徑/my
。
export PATH=${PATH}:/my
UNIX/Linux/macOS PATH 環境變數何時被使用?
無論是哪種 Shell 程式,一般都會首先在目前路徑尋找可執行目標,當目標不存在時,才會搜尋PATH
提供的路徑。
設定 UNIX/Linux/macOS 環境變數
關於如何設定 WUNIX/Linux/macOSindows 環境變數,你可以檢視如何設定 UNIX/Linux/macOS 環境變數一節。