export
例如:
export $HOME=$HOME:YOUR_DIR
set 顯示當前shell的變數,包括目前使用者的變數
env 顯示目前使用者的變數
export 顯示當前置出成使用者變數的shell變數
每個shell有自己特有的變數(set)顯示的變數,這個和使用者變數是不同的,目前使用者變數和你用什麼shell無關,不管你用什麼shell都在,比如 HOME,SHELL等這些變數,但shell自己的變數不同shell是不同的,比如BASH_ARGC,
BASH等,這些變數只有set才會顯示,是bash特有的,export不加參數的時候,顯示哪些變數被匯出成了使用者變數,因為一個shell自己的變數可以通過export “匯出”變成一個使用者變數。
如使用者想增加一目錄到PATH中,操作如下:
1.vim .bashrc增加sbin目錄到PATH中
$export PATH=$PATH:/sbin 或者export PATH=/sbin:$PATH
2.source到環境變數中
$source
3.查驗
set|grep PATH 或env|grep PATH 或 export|grep PATH
這個set 和export很重要:
set env export區別
set 顯示當前shell的變數,包括目前使用者的變數
env 顯示目前使用者的變數
export 顯示當前置出成使用者變數的shell變數
每個shell有自己特有的變數(set)顯示的變數,這個和使用者變數是不同的,目前使用者變數和你用什麼shell無關,不管你用什麼shell都在,比如 HOME,SHELL等這些變數,但shell自己的變數不同shell是不同的,比如BASH_ARGC, BASH等,這些變數只有set才會顯示,是bash特有的,export不加參數的時候,顯示哪些變數被匯出成了使用者變數,因為一個shell自己的變數可以通過export “匯出”變成一個使用者變數。
如使用者想增加一目錄到PATH中,操作如下:
1.vim .bashrc增加sbin目錄到PATH中
$export PATH=$PATH:/sbin 或者export PATH=/sbin:$PATH
2.source到環境變數中
$source
3.查驗
set|grep PATH 或env|grep PATH 或 export|grep PATH
.bashrc和.bash_profile區別
.bash_profile會用在login shell
.bashrc 使用在interactive non-login shell
Bash下每個使用者都可以配置兩個初始檔案:.bash_profile和.bashrc。man bash中的相關解
釋如下:
,------------------------------------------------------------
| ~/.bash_profile
| The personal initialization file, executed for login shells
| ~/.bashrc
| The individual per-interactive-shell startup file
`------------------------------------------------------------
* 每次bash作為login shell啟動時會執行.bash_profile。
* 每次bash作為普通的互動shell(interactive shell)啟動時會執行.bashrc
** 注意
1, 在shell指令碼中“#!/usr/bin/bash”啟動的bash並不執行.bashrc。因為這裡的bash不是
interactive shell。
2, bash作為login shell(login bash)啟動時並不執行.bashrc。雖然該shell也是interactive shell,
但它不是普通的shell。
* 一般.bash_profile裡都會調用.bashrc
儘管login bash啟動時不會自動執行.bashrc,慣例上會在.bash_profile中顯式調用.bashrc。
.bashrc 使用在interactive non-login shell。意思是你每次運行一個bash指令碼的話,.bashrc就會被執行一次。有個簡單的方法,你在.bash_profile和.bashrc裡都用echo列印點什麼東西。你就可以看到著兩個檔案都是什麼時候被執行的了.
顯示環境變數HOME
$ echo $HOME
設定一個新的環境變數hello
$ export HELLO="Hello!"
$ echo $HELLO
使用env命令顯示所有的環境變數
$ env
使用set命令顯示所有本地定義的Shell變數
$ set
還可以使用export設定
如:
#export DISPLAY=127.0.0.1:0.0
編輯/etc/profile修改全域環境變數
編輯.bash_profile修改目前使用者的環境變數