Linux系統(tǒng)下export命令是什么呢?下面是export命令具體介紹:
1、export命令功能:
設(shè)置或顯示環(huán)境變量。
2、語法:
export [-fnp][變量名稱]=[變量設(shè)置值]
3、補(bǔ)充說明:
在shell中執(zhí)行程序時(shí),shell會(huì)提供一組環(huán)境變量。 export可新增,修改或刪除環(huán)境變量,供后續(xù)執(zhí)行的程序使用。export的效力僅及于該此登陸操作。
4、參數(shù):
-f 代表[變量名稱]中為函數(shù)名稱。
-n 刪除指定的變量。變量實(shí)際上并未刪除,只是不會(huì)輸出到后續(xù)指令的執(zhí)行環(huán)境中。
-p 列出所有的shell賦予程序的環(huán)境變量。
一個(gè)變量創(chuàng)建時(shí),它不會(huì)自動(dòng)地為在它之后創(chuàng)建的shell進(jìn)程所知。而命令export可以向后面的shell傳遞變量的值。當(dāng)一個(gè)
shell腳本調(diào)用并執(zhí)行時(shí),它不會(huì)自動(dòng)得到原為腳本(調(diào)用者)里定義的變量的訪問權(quán),除非這些變量已經(jīng)被顯式地設(shè)置為可用。
export命令可以用于傳遞一個(gè)或多個(gè)變量的值到任何后繼腳本,export abc后,將會(huì)將abc加入到當(dāng)前shell的env環(huán)境變量中去。
5、在linux里設(shè)置環(huán)境變量的方法 (export PATH):
直接使用 export 命令:
[root@liyao ~]# export PATH=$PATH:/usr/local/mysql/bin
查看是否已經(jīng)設(shè)置好,可以使用命令 export 命令來查看
[root@liyao ~]# export
declare -x CVS_RSH="ssh"
declare -x G_BROKEN_FILENAMES="1"
declare -x HISTSIZE="1000"
declare -x HOME="/root"
declare -x HOSTNAME="liyao"
declare -x INPUTRC="/etc/inputrc"
declare -x LANG="en_US.UTF-8"
declare -x LESSOPEN="|/usr/bin/lesspipe.sh %s"
declare -x LOGNAME="root"
declare -x LS_COLORS="no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=01;32:*.cmd=01;32:*.exe=01;32:*.com=01;32:*.btm=01;32:*.bat=01;32:*.sh=01;32:*.csh=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tz=01;31:*.rpm=01;31:*.cpio=01;31:*.jpg=01;35:*.gif=01;35:*.bmp=01;35:*.xbm=01;35:*.xpm=01;35:*.png=01;35:*.tif=01;35:"
declare -x MAIL="/var/spool/mail/root"
declare -x OLDPWD
declare -x PATH="/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin"
declare -x PWD="/root"
declare -x SHELL="/bin/bash"
declare -x SHLVL="1"
declare -x SSH_ASKPASS="/usr/libexec/openssh/gnome-ssh-askpass"
declare -x SSH_AUTH_SOCK="/tmp/ssh-AbUtqs3354/agent.3354"
declare -x SSH_CLIENT="192.168.1.102 2640 22"
declare -x SSH_CONNECTION="192.168.1.102 2640 192.168.1.110 22"
declare -x SSH_TTY="/dev/pts/0"
declare -x TERM="vt100"
declare -x USER="root"
注意: 直接使用 export 設(shè)置的變量都是臨時(shí)變量,也就是說退出當(dāng)前的shell,為該變量定義的值便不會(huì)生效了。
修改 /etc/profile:
[root@liyao ~]# vi /etc/profile
export PATH=$PATH:/usr/local/mysql/bin # 在配置文件中加入此行配置
注意:修改完這個(gè)文件必須要使用 以下命令在不用重啟系統(tǒng)的情況下使修改的內(nèi)容生效
[root@liyao ~]# source /etc/profile
或者是:
[root@liyao ~]# . /etc/profile
[root@liyao ~]# echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin
# 配置已經(jīng)生效
修改 .bashrc 文件是在當(dāng)前用戶 shell 下生效:
# vi /root/.bashrc
在里面加入:
export PATH=$PATH:/usr/local/mysql/bin
修改這個(gè)文件之后同樣也需要使用 source 或者是 . 使配置文件生效。
再來使用 echo $PATH看下變量是否生效
[root@liyao ~]# echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin
“/bin”、“/sbin”、“ /usr/bin”、“/usr/sbin”、“/usr/local/bin”等路徑已經(jīng)在系統(tǒng)環(huán)境變量中了,如果可執(zhí)行文件在這幾個(gè)標(biāo)準(zhǔn)位置,在終端命令行輸入該軟件可執(zhí)行文件的文件名和參數(shù)(如果需要參數(shù)),回車即可。
如果不在標(biāo)準(zhǔn)位置,文件名前面需要加上完整的路徑。不過每次都這樣跑就太麻煩了,一個(gè)“一勞永逸”的辦法是把這個(gè)路徑加入環(huán)境變量。命令“PATH=$PATH:路徑”可以把這個(gè)路徑加入環(huán)境變量,但是退出這個(gè)命令行就失效了。要想永久生效,需要把這行添加到環(huán)境變量文件里。有兩個(gè)文件可選:“/etc/profile”和用戶主目錄下的“.bash_profile”,“/etc/profile”對(duì)系統(tǒng)里所有用戶都有效,用戶主目錄下的“.bash_profile”只對(duì)這個(gè)用戶有效。
“PATH=$PATH:路徑1:路徑2:...:路徑n”,意思是可執(zhí)行文件的路徑包括原先設(shè)定的路徑,也包括從“路徑1”到“路徑n”的所有路徑。當(dāng)用戶輸入一個(gè)一串字符并按回車后,shell會(huì)依次在這些路徑里找對(duì)應(yīng)的可執(zhí)行文件并交給系統(tǒng)核心執(zhí)行。那個(gè)“$PATH”表示原先設(shè)定的路徑仍然有效,注意不要漏掉。某些軟件可能還有“PATH”以外類型的環(huán)境變量需要添加,但方法與此相同,并且也需要注意“$”。
以上就是小編今天的分享了,希望可以幫助到大家。
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com