如何在 macOS 中設置 PATH 變量

通過終端執行程序是在 Mac 上執行操作的一種快速有效的方式。它提供了擴展的功能以及對程序功能和輸出的精細控制,而這在其 GUI 等效項中是缺乏的。

然而,通過 CLI 啟動程序有時也會帶來一些問題。其中之一就是未找到命令當您嘗試執行某些程序/命令時 shell 向您拋出的錯誤。

雖然您可以通過在命令前添加程序的絕對路徑來暫時克服這個問題,但如果您想多次使用該程序,這不是一個非常實用的方法。

該問題的另一種(讀取效率)解決方案是為此程序設置 PATH 變量。請跟隨我們描述 PATH 變量並列出如何在 macOS 中設置 PATH 變量的步驟。

PATH 或 PATH 變量是所有 Unix 上的一種環境變量類Unix作業系統.環境變量構成操作系統上各種程序或進程的名稱-值對,例如係統程序或進程的路徑、位置以及其他系統程序所需的其他基本信息。

談到 PATH,該變量包含 shell 需要搜索以通過終端命令執行請求的程序的所有目錄(用於添加到 PATH 中的各種程序)的列表。

為什麼需要設置PATH環境變量?

在 macOS 上,當您在終端中運行命令時,它會在 PATH 環境變量內搜索該命令中所請求程序的路徑。如果找到路徑地址,則成功執行命令並返回輸出。如果沒有,您將得到未找到命令錯誤。

正如我們最初提到的,在命令中指定程序安裝/存儲目錄的絕對路徑或完整路徑是克服此錯誤的一種方法。但不幸的是,由於一遍又一遍地這樣做會佔用您大量的時間和精力,因此這不是一個非常有效的方法,並且當您想要重複運行命令時不能使用。

另一方面,如果您在 PATH 變量中設置該程序的路徑,則可以輕鬆地在系統上的任何目錄中使用它,而無需指定其絕對路徑。

基本上,這意味著不要像這樣運行命令:

/path/to/program/script.sh

您可以簡單地使用以下內容:

script.sh

文件系統上的任何目錄內。

如何在 macOS 中設置 PATH 變量

在 macOS 中設置 PATH 變量需要使用 CLI,與 Windows 不同,Windows 允許您使用 GUI 和 CLI 來執行此操作。另外,根據您的要求,有兩種方法可以在 Mac 上設置 PATH:暫時的永恆的.

當您臨時設置 PATH 時,您的路徑更改僅適用於當前會話 — 註銷會話會將 PATH 恢復到之前的狀態。相反,永久設置 PATH 將永久保留您的更改並將其應用到您的所有會話 - 即使在您啟動新的終端會話或重新啟動 Mac 之後也是如此。

完成此操作後,請按照以下部分中的步驟在 Mac 上設置 PATH。

識別當前路徑條目

在將程序的路徑添加到 Mac 上的 PATH 變量之前,您應該首先識別系統 PATH 中的當前條目,以驗證是否尚不存在相同的條目。

要查看當前的 PATH 設置,請打開終端應用程序並運行:

echo $PATH

如果您正在為新程序/腳本設置 PATH,則可以跳過此步驟。

臨時設置 PATH 變量

確定當前的 PATH 條目後,您現在可以為任何程序設置 PATH。如果您只想在當前會話中通過終端使用/執行程序,您可以使用以下命令臨時設置其路徑:

export PATH=$PATH:absolute/path/to/program/

例如,如果您想為 Python 3.6 設置 PATH,您可以運行:

export PATH=$PATH:/Library/Frameworks/Python.framework/Versions/3.6/bin

這樣做將為程序設置一個臨時變量,您可以在當前終端會話或活動終端窗口的命令中使用該變量。

永久設置 PATH 變量

如果您想定期使用某個程序,則必須永久設置其路徑。為此,您需要訪問 shell 的配置或配置文件並將程序的路徑添加到其中。

根據您在 Mac 上運行的 macOS 版本,這可以通過巴什外殼或桀驁(z 外殼)。

  • 對於較舊的 macOS 版本(Catalina 之前): 巴什(.bashrc或者.bash_配置文件)
  • 對於 macOS Catalina 及更高版本: 桀驁(.zshrc或者.zsh_配置文件)

現在您知道需要在其中添加程序/腳本路徑的文件,打開終端並輸入基於您的 shell 的命令:

對於bash

nano ~/.bash_profile

或者

nano ~/.bashrc

對於 zsh:

nano ~/.zsh_profile

或者

nano ~/.zshrc

如果您的系統中缺少配置文件或配置文件,此命令將創建一個新文件;如果存在,它將打開相同的文件,然後您可以對其進行編輯。

現在,您所要做的就是在文件系統上找到程序或腳本的完整路徑。為此,請打開 Finder 並導航到存儲或安裝程序或腳本的目錄。在這裡,右鍵單擊程序/腳本,然後按選項鍵,然後選擇複製 xyz 作為路徑名, 在哪裡XYZ是一個程序名稱。

返回終端並在 nano 或任何其他環境中打開適用於您的 shell 的配置文件或配置文件。在文件中,輸入以下行:

export PATH=$PATH:/path/to/directory

……需要更換的地方路徑/到/目錄使用您在上一步中復制的確切路徑。

或者,如果文件已包含路徑條目,請在該行後附加冒號 (:) 其次是:

/path/to/directory

控制+O將您的更改寫入文件。當提示確認文件名時,點擊返回繼續使用默認值。按控制+X退出編輯器。

現在,通過打開終端窗口並運行以下命令來驗證路徑是否已添加:

echo $PATH

最後,關閉終端窗口並重新打開它以啟動新會話。或者,您可以運行以下命令來立即應用更改:

source ~/.bashrc

或者

source ~/.bash_profile

或者

source ~/.zshrc

或者

source ~/.zsh_profile

完成後,您應該能夠從文件系統中的任何目錄運行程序或腳本。

添加到 PATH Mac:通過終端從任何地方訪問程序

將 PATH 環境變量設置為使用要使用的程序的路徑後,您現在可以通過終端從文件系統中的任何位置執行/訪問它。如果您使用Python或外殼腳本為了自動化您的工作流程,為這些腳本設置 PATH 可以簡化您的生活,因為您現在可以在任何目錄中訪問它們,而無需指定它們的絕對路徑。

有關在 macOS 上設置 PATH 的常見問題解答

1. 如何在 Catalina Mac 中設置環境變量?

如果您運行的是 macOS Catalina(或更高版本),設置環境變量就像修改 shell 配置或配置文件一樣簡單,以合併您想要在任何地方訪問的程序/腳本的路徑。由於 macOS 使用 zsh 作為 Catalina(及更高版本)版本上的默認 shell,因此您只需編輯.zshrc或者.zsh_配置文件文件並添加程序或腳本的路徑。按照本文前面的步驟了解執行此操作的步驟和不同方法。

2. 如何在Mac上永久設置PATH?

在 Mac 上永久設置 PATH 意味著您的 PATH 環境變量更改不限於當前的 shell 會話,這與臨時變量設置不同。因此,即使您開始新會話或重新啟動 Mac,系統的 shell 也可以繼續訪問它。要在 Mac 上永久設置 PATH,您所要做的就是打開 bash 文件(.bashrc或者.bash_配置文件)或 zsh 文件(.zshrc或者.zsh_配置文件)並將程序或腳本的路徑添加到其中。上面的指南列出了執行此操作的步驟。

3. 如何在Mac上找到PATH變量?

要在 Mac 上查找 PATH 變量,請打開終端窗口並運行回顯$PATH。之後,shell 將返回 Mac 上 PATH 環境變量下當前列出的所有目錄的列表。