linux脚本 set env,linux 中 set,env,export,declare显示shell变量的区别
shell變量包括兩種變量
1.本shell私有的變量:通過賦值語句定義好的變量,可以通過如下方法定義shell變量
A1="1234"
delcare A2="2345"
2.用戶的環(huán)境變量:通過export語法導(dǎo)出的shell私有變量,可以通過如下方法導(dǎo)出用戶環(huán)境變量
A1="1234"
export A1 #先定義再導(dǎo)出
export A3="34"
導(dǎo)出成的用戶環(huán)境變量可以在所有的shell中看到
env顯示用戶的環(huán)境變量;
set 和declare顯示當(dāng)前shell的定義的私有變量,包括用戶的環(huán)境變量;
export 顯示當(dāng)前導(dǎo)出成的用戶變量的shell變量,并顯示變量的屬性(是否只讀),按變量名稱排序;
在Linux里設(shè)置環(huán)境變量的方法(export PATH)
一般來說,配置交叉編譯工具鏈的時候需要指定編譯工具的路徑,此時就需要設(shè)置環(huán)境變量。例如我的mips-linux-gcc編譯器在“/opt/au1200_rm/build_tools/bin”目錄下,build_tools就是我的編譯工具,則有如下三種方法來設(shè)置環(huán)境變量:1、直接用export命令:#export PATH=$PATH:/opt/au1200_rm/build_tools/bin查看是否已經(jīng)設(shè)好,可用命令export查看:[root@localhost bin]#export
declare -x PWD="/opt/au1200_rm/build_tools/bin"
declare -x BASH_ENV="/root/.bashrc"declare -x G_BROKEN_FILENAMES="1"declare -x HISTSIZE="1000"
可以看到,環(huán)境變量已經(jīng)設(shè)好,PATH里面已經(jīng)有了我要加的編譯器的路徑。2、修改profile文件:#vi /etc/profile在里面加入:export PATH="$PATH:/opt/au1200_rm/build_tools/bin"
3. 修改.bashrc文件:# vi /root/.bashrc在里面加入:export PATH="$PATH:/opt/au1200_rm/build_tools/bin"后兩種方法一般需要重新注銷系統(tǒng)才能生效,最后可以通過echo命令測試一下:# echo $PATH看看輸出里面是不是已經(jīng)有了/my_new_path這個路徑了。
“/bin”、“/sbin”、“/usr/bin”、“/usr/sbin”、“/usr/local/bin”等路徑已經(jīng)在系統(tǒng)環(huán)境變量中了,如果可執(zhí)行文件在這幾個標(biāo)準(zhǔn)位置,在終端命令行輸入該軟件可執(zhí)行文件的文件名和參數(shù)回車即可。
如果不在標(biāo)準(zhǔn)位置,文件名前面需要加上完整的路徑。一勞永逸”的辦法是把這個路徑加入環(huán)境變量。命令 “PATH=$PATH:路徑”可以把這個路徑加入環(huán)境變量,但是退出這個命令行就失效了。要想永久生效,需要把這行添加到環(huán)境變量文件里。有兩個文件可 選:“/etc/profile”和用戶主目錄下的“.bash_profile”,“/etc/profile”對系統(tǒng)里所有用戶都有效,用戶主目錄下 的“.bash_profile”只對這個用戶有效。
“PATH=$PATH:路徑1:路徑2:...:路徑n”,意思是可執(zhí)行文件的路徑包括原先設(shè)定的路徑,也包括從“路徑1”到“路徑n”的所 有路徑。當(dāng)用戶輸入一個一串字符并按回車后,shell會依次在這些路徑里找對應(yīng)的可執(zhí)行文件并交給系統(tǒng)核心執(zhí)行。那個“$PATH”表示原先設(shè)定的路徑 仍然有效,注意不要漏掉。
格式如下():
# 軟件名-版本號
PATH=$PATH:路徑1:路徑2:...:路徑n
其他環(huán)境變量=$其他環(huán)境變量:...
在“profile”和“.bash_profile”中,“#”是注釋符號,寫在這里除了視覺分隔外沒有任何效果。
設(shè)置完畢,注銷并重新登錄,設(shè)置就生效了。如果不注銷,直接在shell里執(zhí)行這些語句,也能生效,但是作用范圍只限于執(zhí)行了這些語句的shell。
總結(jié)
以上是生活随笔為你收集整理的linux脚本 set env,linux 中 set,env,export,declare显示shell变量的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux访问文件mac时间,Linux
- 下一篇: linux php不支持crypt,(P