成功路上並不擁擠,因為堅持的人並不多。只有堅持了,我們才知道,這一路上有多少事情需要實幹,有多少東西需要學習。 1. 環境變數的理解 環境變數一般是指在操作系統中用來指定操作系統運行環境的一些參數,如臨時文件夾位置、系統文件夾位置以及某些應用軟體文件的路徑等等。環境變數相當於給系統或用戶應用程式設置 ...
成功路上並不擁擠,因為堅持的人並不多。只有堅持了,我們才知道,這一路上有多少事情需要實幹,有多少東西需要學習。
1. 環境變數的理解
環境變數一般是指在操作系統中用來指定操作系統運行環境的一些參數,如臨時文件夾位置、系統文件夾位置以及某些應用軟體文件的路徑等等。環境變數相當於給系統或用戶應用程式設置的一些參數,具體起什麼作用這當然和具體的環境變數相關。
比如 Path,是告訴系統,當要求系統運行一個程式而沒有告訴它程式所在的完整路徑時,系統除了在當前目錄下麵尋找此程式外,還應到哪些目錄下去尋找。
2. 環境變數配置文件
2.1 系統級別
系統級別配置文件,系統啟動就會載入,修改需要 Root 許可權。
/etc/paths
:任何用戶登陸時都會讀取該文件,全局建議修改這個文件 。/etc/profile
:為系統的每個用戶設置環境信息和啟動程式,其配置對所有登錄的用戶都有效,一般不建議修改該文件。
2.2 用戶級別
~/.bash_profile
:為當前用戶設置專屬的環境信息和啟動程式,當用戶登錄時該文件執行一次。預設情況下,它用於設置環境變數,並執行當前用戶的 .bashrc 文件,一般用戶級環境變數會放到這個文件。~/.bash_login
和~/.profile
:這三個文件也是依次執行的,如果 bash_profile 文件存在,則後面的兩個文件就會被忽略不讀了,如 bash_profile 文件不存在,才會以此類推讀取後面的文件。
2.3 shell 打開時載入
-
/etc/bashrc
或/etc/zshrc
:系統級配置,為每個運行 bash/zhs shell 的用戶執行該文件,當 bash/zhs shell 打開時,該文件被執行,其配置對所有使用 bash 的用戶打開的每個 bash 都有效。 -
~/.bashrc
或~/.zshrc
:用戶級配置,作用同上。它是 bash/zsh shell 打開的時候載入的,對當前用戶打開的每個 bash 都有效。
如果系統預設 shell 使用的是 zsh 而不是 sh、bash,那麼 zsh 是不載入 .bash_profile 文件的,而是載入 .zshrc。source .zshrc
在 zsh 環境下讀取配置文件。
3. 環境變數配置方法
-
在 .bash_profile 文件中寫入
# export 命令用於設置或顯示環境變數 # 語法格式為 export 變數名稱=變數設置值 export PATH=$PATH:/opt/STM/STLinux-2.3/devkit/sh4/bin
-
讓配置文件立即生效
# source 命令作用為在當前base環境下讀取並執行file中的命令 source .bash_profile
4. 常使用的環境變數
PATH
:系統指定可執行文件的搜索路徑。SHELL
:系統當前使用 Shell 程式。
5. 使用中常見問題
如果系統預設 shell 使用的是 zsh 而不是 sh、bash,那麼 zsh 是不載入 .bash_profile 文件的,而是載入 .zshrc。source .zshrc
在 zsh 環境下讀取配置文件。
確認 shell:
# 確認當前進程(運行時的)正在使用的 shell
echo $0
# 確認當前用戶預設shell
echo $SHELL
修改 shell:
我們可以用下麵的命令來看看 macOS 系統有哪些支持的 shell。並來變更預設的 shell。
cat /etc/shells
chsh -s /bin/dash
優秀博客推薦:
https://baijiahao.baidu.com/s?id=1739693765201054630&wfr=spider&for=pc