環境變數學習(二)Mac 可設定環境變數的位置
前言
(1)首先要知道你使用的Mac OS X是什麼樣的Shell,使用命令
echo $SHELL
如果輸出的是:csh或者是tcsh,那麼你用的就是C Shell。
如果輸出的是:bash,sh,zsh,那麼你的用的可能就是Bourne Shell的一個變種。
Mac OS X 10.2之前預設的是C Shell。
Mac OS X 10.3之後預設的是Bourne Shell。
(2)如果是Bourne Shell。
那麼你可以把你要新增的環境變數新增到你主目錄下面的.profile或者.bash_profile,如果存在沒有關係新增進去即可,如果沒有生成一個。
Mac配置環境變數的地方
mac 一般使用bash作為預設shell,Mac系統的環境變數,載入順序為:
1、系統級別的
/etc/profile
/etc/bashrc
/etc/paths
2、使用者級別的
~/.bash_profile (mac用的)
~/.bash_login
~/.profile
~/.bashrc (這個linux用的)
各載入方式的分析和修改方法
1、/etc/profile -系統級別,不建議修改
(1)檔案構成
執行vi /etc/profile之後呈現:
# System-wide .profile for sh(1)
if [ -x /usr/libexec/path_helper ]; then
eval `/usr/libexec/path_helper -s`
fi
if [ "${BASH-no}" != "no" ]; then
[ -r /etc/bashrc ] && . /etc/bashrc
fi
(2)級別:系統級別,應該是不管哪個shell都呼叫這個profile,所以不建議用這個檔案用於全域性環境變數 >/etc/profile
:此檔案為系統的每個使用者設定環境資訊,當用戶第一次登入時,該檔案被執行,並從/etc/profile.d目錄的配置檔案中搜集shell的設定
注意:全域性(公有)配置,不管是哪個使用者,登入時都會讀取該檔案。
(3)修改方法:
如果沒特殊說明,設定PATH的語法都為:
#中間用冒號隔開
export PATH =$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N>
步驟
通過編輯 啟動檔案 來改PATH,
# vim /etc/profile
在文件最後,新增:
export PATH="/opt/STM/STLinux-2.3/devkit/sh4/bin:$PATH"
儲存,退出。
想立即生效請執行:
#source /etc/profile
不報錯則成功。
如果想立刻生效,則可執行下面的語句:
$ source .bash_profile(這是檔名)
2、/etc/bashrc - 系統級別,建議修改,方法複雜(系統級別2、和下面的3只修改一個就可以了)
(1)檔案構成
執行vi /etc/bashrc之後呈現:
# System-wide .bashrc file for interactive bash(1) shells.
if [ -z "$PS1" ]; then
return
fi
PS1='\h:\W \u\$ '
# Make bash check its window size after a process completes
shopt -s checkwinsize
[ -r "/etc/bashrc_$TERM_PROGRAM" ] && . "/etc/bashrc_$TERM_PROGRAM"
(2)級別:這個是bash啟動時候必須載入的環境變數,做為全域性環境變數設定是可以行的 >/etc/bashrc:為每一個執行bash shell的使用者執行此檔案,當bash shell被開啟時,該檔案被讀取。
注意:全域性(公有)配置,bash shell執行時,不管是何種方式,都會讀取此檔案。
(3)修改方法:同上/etc/profile
3、/etc/paths - 系統級別,建議修改,方法簡單
(1)檔案構成
執行vi /etc/paths之後呈現:
/usr/local/bin
/usr/bin
/bin
/usr/sbin/sbin
(2)級別:實質上這就是個系統全域性的路徑,不建議做直接改動,具體改動的方法兩個。
1.建立一個檔案:
sudo touch /etc/paths.d/mysql
2.用 vim 開啟這個檔案(如果是以 open -t 的方式開啟,則不允許編輯):
sudo vim /etc/paths.d/mysql
3.編輯該檔案,鍵入路徑並儲存(關閉該 Terminal 視窗並重新開啟一個,就能使用 mysql 命令了)
/usr/local/mysql/bin
或者
sudo -s 'echo "/usr/local/sbin/mypath" > /etc/paths.d/mypath'
(3)修改方法:就是載入路徑
4、~/.bash_profile -使用者級別,建議修改
~/.bash_login
~/.profile
(1)檔案構成:和/etc/profile一樣,export PATH=$PATH:/xxx/bin:/bin
(2)級別:使用者級別,這三個MacOS按照順序查詢,找到了一個,就不往下查找了。使用者登入後執行一次
注意:每個使用者都可使用該檔案輸入專用於自己使用的shell資訊,當用戶登入時,該檔案僅僅執行一次!
(3)修改方法:同/etc/profile
5、~/.bashrc -使用者級別 (Linux 裡面是 .bashrc 而 Mac 是 .bash_profile)
(1)檔案構成:和/etc/profile一樣,export PATH=$PATH:/xxx/bin:/bin
(2)級別:使用者級別。每次開啟新的shell視窗,都會去讀取一次。
(3)修改方法:同/etc/profile
總結
系統、使用者級別只要選一個修改就夠了