1. Linux export命令简介
Linux export命令用于设置或显示环境变量。
�.shellä¸æ§è¡ç¨åºæ¶ï¼shellä¼æä¾ä¸ç»ç¯å¢åéãexportå¯æ°å¢ï¼ä¿®æ¹æå é¤ç¯å¢åéï¼ä¾åç»æ§è¡çç¨åºä½¿ç¨ãexportçæåä» åäºè¯¥æ¬¡ç»éæä½ã
exportå½ä»¤ç¨äºå°shellåéè¾åºä¸ºç¯å¢åéï¼æè å°shellå½æ°è¾åºä¸ºç¯å¢åéã
ä¸ä¸ªåéå建æ¶ï¼å®ä¸ä¼èªå¨å°ä¸ºå¨å®ä¹åå建çshellè¿ç¨æç¥ãèå½ä»¤exportå¯ä»¥ååé¢çshellä¼ éåéçå¼ãå½ä¸ä¸ªshellèæ¬è°ç¨å¹¶æ§ è¡æ¶ï¼å®ä¸ä¼èªå¨å¾å°å为èæ¬ï¼è°ç¨è ï¼éå®ä¹çåéç访é®æï¼é¤éè¿äºåéå·²ç»è¢«æ¾å¼å°è®¾ç½®ä¸ºå¯ç¨ãexportå½ä»¤å¯ä»¥ç¨äºä¼ éä¸ä¸ªæå¤ä¸ªåéçå¼å°ä»»ä½å继èæ¬ã
Linux exportå½ä»¤ç®ä»
2. exportåæ°
-f 代表[åéå称]ä¸ä¸ºå½æ°å称ã
-n å é¤æå®çåéãåéå®é ä¸å¹¶æªå é¤ï¼åªæ¯ä¸ä¼è¾åºå°åç»æ令çæ§è¡ç¯å¢ä¸ã
-p ååºææçshellèµäºç¨åºçç¯å¢åéã
ä¸ä¸ªåéå建æ¶ï¼å®ä¸ä¼èªå¨å°ä¸ºå¨å®ä¹åå建çshellè¿ç¨æç¥ãèå½ä»¤exportå¯ä»¥ååé¢çshellä¼ éåéçå¼ãå½ä¸ä¸ªshellèæ¬è°ç¨å¹¶æ§è¡æ¶ï¼å®ä¸ä¼èªå¨å¾å°å为èæ¬ï¼è°ç¨è ï¼éå®ä¹çåéç访é®æï¼é¤éè¿äºåéå·²ç»è¢«æ¾å¼å°è®¾ç½®ä¸ºå¯ç¨ãexportå½ä»¤å¯ä»¥ç¨äºä¼ éä¸ä¸ªæå¤ä¸ªåéçå¼å°ä»»ä½å继èæ¬ã
Linuxæä¹è®¾ç½®åéç¯å¢
3. å¨linuxé设置ç¯å¢åéçæ¹æ³
ä¸è¬æ¥è¯´ï¼é 置交åç¼è¯å·¥å ·é¾çæ¶åéè¦æå®ç¼è¯å·¥å ·çè·¯å¾ï¼æ¤æ¶å°±éè¦è®¾ç½®ç¯å¢åéãä¾å¦æçmips-linux-gccç¼è¯å¨å¨â/opt/abc/123/binâç®å½ä¸ï¼æå¦ä¸ä¸ç§æ¹æ³æ¥è®¾ç½®ç¯å¢åéï¼
3.1 ç´æ¥ç¨exportå½ä»¤ï¼ä¸´æ¶çæ
æ¥çæ¯å¦å·²ç»è®¾å¥½ï¼å¯ç¨å½ä»¤exportæ¥çï¼
æ£æ¥ï¼
è¾åºç»æï¼
declare -x HISTCONTROL="ignoredups"
declare -x HISTSIZE="1000"
declare -x HOME="/root"
declare -x HOSTNAME="zcwyou"
declare -x LANG="en_US.UTF-8"
declare -x LESSOPEN="||/usr/bin/lesspipe.sh %s"
declare -x LOGNAME="root"
declare -x LS_COLORS="rs=0:di=0134:ln=0136:mh=00:pi=4033:so=0135:do=0135:bd=403301:cd=403301:or=403101:mi=01053741:su=3741:sg=3043:ca=3041:tw=3042:ow=3442:st=3744:ex=0132: .tar=0131: .tgz=0131: .arc=0131: .arj=0131: .taz=0131: .lha=0131: .lz4=0131: .lzh=0131: .lzma=0131: .tlz=0131: .txz=0131: .tzo=0131: .t7z=0131: .zip=0131: .z=0131: .Z=0131: .dz=0131: .gz=0131: .lrz=0131: .lz=0131: .lzo=0131: .xz=0131: .bz2=0131: .bz=0131: .tbz=0131: .tbz2=0131: .tz=0131: .deb=0131: .rpm=0131: .jar=0131: .war=0131: .ear=0131: .sar=0131: .rar=0131: .alz=0131: .ace=0131: .zoo=0131: .cpio=0131: .7z=0131: .rz=0131: .cab=0131: .jpg=0135: .jpeg=0135: .gif=0135: .bmp=0135: .pbm=0135: .pgm=0135: .ppm=0135: .tga=0135: .xbm=0135: .xpm=0135: .tif=0135: .tiff=0135: .png=0135: .svg=0135: .svgz=0135: .mng=0135: .pcx=0135: .mov=0135: .mpg=0135: .mpeg=0135: .m2v=0135: .mkv=0135: .webm=0135: .ogm=0135: .mp4=0135: .m4v=0135: .mp4v=0135: .vob=0135: .qt=0135: .nuv=0135: .wmv=0135: .asf=0135: .rm=0135: .rmvb=0135: .flc=0135: .avi=0135: .fli=0135: .flv=0135: .gl=0135: .dl=0135: .xcf=0135: .xwd=0135: .yuv=0135: .cgm=0135: .emf=0135: .axv=0135: .anx=0135: .ogv=0135: .ogx=0135: .aac=0136: .au=0136: .flac=0136: .mid=0136: .midi=0136: .mka=0136: .mp3=0136: .mpc=0136: .ogg=0136: .ra=0136: .wav=0136: .axa=0136: .oga=0136: .spx=0136:*.xspf=0136:"
declare -x MAIL="/var/spool/mail/root"
declare -x OLDPWD
declare -x PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/abc/123/bin"
declare -x PWD="/root"
declare -x SELINUX_LEVEL_REQUESTED=""
declare -x SELINUX_ROLE_REQUESTED=""
declare -x SELINUX_USE_CURRENT_RANGE=""
declare -x SHELL="/bin/bash"
declare -x SHLVL="1"
declare -x SSH_CLIENT="113.105.164.145 6668 22"
declare -x SSH_CONNECTION="113.105.164.145 6668 113.105.164.151 22"
declare -x SSH_TTY="/dev/pts/0"
declare -x TERM="xterm"
declare -x USER="root"
declare -x XDG_RUNTIME_DIR="/run/user/0"
declare -x XDG_SESSION_ID="2185"
çæä¸ä¸è¾åºçè¿é¨åï¼
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/abc/123/bin"
å¯ä»¥çå°å·²ç»å æ¬äºåå设置çåéè·¯å¾ã
åéè·¯å¾åç¯å¢Linux
3.2 ä¿®æ¹profileæ件ï¼æ°¸ä¹ çæ
æç®å½/opt/abc/123/binå¨éé¢å å ¥:
export PATH="
3.3 ä¿®æ¹.bashrcæ件ï¼æ°¸ä¹ çæ
å¨éé¢å å ¥ï¼
export PATH="PATH:/opt/abc/123/bin"¨K14K¨G3Gå¨éé¢å å ¥ï¼exportPATH="PATH:/opt/abc/123/bin"
æ£æ¥ç»æï¼
3.4 ä¿®æ¹/etc/re.localæ件ï¼æ°¸ä¹ çæ
å¨éé¢å å ¥ï¼
export PATH="
â/binâãâ/sbinâãâ /usr/binâãâ/usr/sbinâãâ/usr/local/binâçè·¯å¾å·²ç»å¨ç³»ç»ç¯å¢åéä¸äºï¼å¦æå¯æ§è¡æ件å¨è¿å 个æ åä½ç½®ï¼å¨ç»ç«¯å½ä»¤è¡è¾å ¥è¯¥è½¯ä»¶å¯æ§è¡æ件çæ件åååæ°(å¦æéè¦åæ°)ï¼å车å³å¯ã
å¦æä¸å¨æ åä½ç½®ï¼æ件ååé¢éè¦å ä¸å®æ´çè·¯å¾ãä¸è¿æ¯æ¬¡é½è¿æ ·è·å°±å¤ªéº»ç¦äºï¼ä¸ä¸ªâä¸å³æ°¸é¸âçåæ³æ¯æè¿ä¸ªè·¯å¾å å ¥ç¯å¢åéãå½ä»¤ export PATH:/opt/abc/123/bin"â/binâãâ/sbinâãâ/usr/binâãâ/usr/sbinâãâ/usr/local/binâçè·¯å¾å·²ç»å¨ç³»ç»ç¯å¢åéä¸äºï¼å¦æå¯æ§è¡æ件å¨è¿å 个æ åä½ç½®ï¼å¨ç»ç«¯å½ä»¤è¡è¾å ¥è¯¥è½¯ä»¶å¯æ§è¡æ件çæ件åååæ°(å¦æéè¦åæ°)ï¼å车å³å¯ãå¦æä¸å¨æ åä½ç½®ï¼æ件ååé¢éè¦å ä¸å®æ´çè·¯å¾ãä¸è¿æ¯æ¬¡é½è¿æ ·è·å°±å¤ªéº»ç¦äºï¼ä¸ä¸ªâä¸å³æ°¸é¸âçåæ³æ¯æè¿ä¸ªè·¯å¾å å ¥ç¯å¢åéãå½ä»¤exportPATH="è·¯å¾â(æâPATH=
PATH为ç¯å¢åéåï¼å¦DVSDKï¼è°ç¨æ¶ç¨
export DVSDK)å¯ä»¥æè¿ä¸ªè·¯å¾å å ¥ç¯å¢åéï¼ä½æ¯éåºè¿ä¸ªå½ä»¤è¡å°±å¤±æäºãè¦æ³æ°¸ä¹ çæï¼éè¦æè¿è¡æ·»å å°ç¯å¢åéæ件éãæ两个æ件å¯éï¼â/etc/profileâåç¨æ·ä¸»ç®å½ä¸çâ.bashprofileâï¼â/etc/profileâ对系ç»éææç¨æ·é½ææï¼ç¨æ·ä¸»ç®å½ä¸çâ.bashprofileâåªå¯¹è¿ä¸ªç¨æ·ææãexportPATH="
PATH:è·¯å¾1:è·¯å¾2:â¦:è·¯å¾n"ãï¼ï¼æææ¯å¯æ§è¡æ件çè·¯å¾å æ¬åå 设å®çè·¯å¾ï¼ä¹å æ¬ä»âè·¯å¾1âå°âè·¯å¾nâçææè·¯å¾ãå½ç¨æ·è¾å ¥ä¸ä¸ªä¸ä¸²å符并æå车åï¼shellä¼ä¾æ¬¡å¨è¿äºè·¯å¾éæ¾å¯¹åºçå¯æ§è¡æ件并交ç»ç³»ç»æ ¸å¿æ§è¡ãé£ä¸ªâ
âã
注æï¼ä¸DOS/Windowä¸åï¼UNIX类系ç»ç¯å¢åéä¸è·¯å¾åç¨åå·åéï¼ä¸æ¯åå·ãå¦å¤ï¼è½¯ä»¶è¶è£ è¶å¤ï¼ç¯å¢åéè¶æ·»è¶å¤ï¼ä¸ºäºé¿å é ææ··ä¹±ï¼å»ºè®®ææè¯å¥é½æ·»å å¨æ件ç»å°¾ï¼æ软件çå®è£ 顺åºæ·»å ã
æ¬æå·²åæ¥è³å客ç«ï¼
https://www.linuxrumen.com/cyml/859.html
Linux的变量种类 按变量的生存周期来划分,Linux变量可分为两类: 1 永久的:需要修改配置文件,变量永久生效。 2 临时的:使用export命令声明即可,变量在关闭shell时失效。 设置变量的三种方法 1 在/etc/profile文件中添加变量【对所有用户生效(永久的)】 用VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是“永久的”。 例如:编辑/etc/profile文件,添加CLASSPATH变量 export CLASSPATH=./JAVA_HOME/lib$JAVA_HOME/jre/lib 注:修改文件后要想马上生效还要运行# source /etc/profile不然只能在下次重进此用户时生效。 2 在用户目录下的.bash_profile文件中增加变量【对单一用户生效(永久的)】 用VI在用户目录下的.bash_profile文件中增加变量,改变量仅会对当前用户有效,并且是“永久的”。 例如:编辑guok用户目录(/home/guok)下的.bash_profile 命令用法如下 $ cd (进入用户登陆目录) $ls –al .bash_profile(.bash_profile为隐藏文件,因此要用ls –a命令查找) $vi .bash_profile(用vi编辑.bash_profile) vi/home/guok/.bash.profile添加如下内容:exportCLASSPATH=./JAVAHOME/libJAVA_HOME/jre/lib 注:修改文件后要想马上生效还要运行$ source /home/guok/.bash_profile不然只能在下次重进此用户时生效。 3 直接运行export命令定义变量【只对当前shell(BASH)有效(临时的)】 在shell的命令行下直接使用[export 变量名=变量值] 定义变量, 该变量只在当前的shell(BASH)或其子shell(BASH)下是有效的, shell关闭了,变量也就失效了,再打开新shell时就没有这个变量,需要使用的话还需要重新定义。 环境变量的查看 1 使用echo命令查看单个环境变量。例如: echo $PATH 2 使用env查看所有环境变量。例如: env 3 使用set查看所有本地定义的环境变量。 使用unset删除指定的环境变量 set可以设置某个环境变量的值。清除环境变量的值用unset命令。如果未指定值,则该变量值将被设为NULL。示例如下: export TEST="Test..." #增加一个环境变量TEST env|grep TEST #此命令有输入,证明环境变量TEST已经存在了 TEST=Test... unset TEST #删除环境变量TEST $ env|grep TEST #此命令没有输出,证明环境变量TEST已经删除 常用的环境变量 PATH 决定了shell将到哪些目录中寻找命令或程序 HOME 当前用户主目录 HISTSIZE 历史记录数 LOGNAME 当前用户的登录名 HOSTNAME 指主机的名称 SHELL 当前用户Shell类型 LANGUGE 语言相关的环境变量,多语言可以修改此环境变量 MAIL 当前用户的邮件存放目录 PS1 基本提示符,对于root用户是#,对于普通用户是$Linux下设置和查看环境变量 https://www.cnblogs.com/qiuhong10/p/7815943.htmlLinux下修改.bash_profile 文件改变PATH变量的值https://blog.csdn.net/u011323949/article/details/79045788比如要把/etc/apache/bin目录添加到PATH中,方法有三:
1.#PATH=$PATH:/etc/apache/bin
使用这种方法,只对当前会话有效,也就是说每当登出或注销系统以后,PATH 设置就会失效
2.#vi /etc/profile
在适当位置添加 PATH=$PATH:/etc/apache/bin (注意:= 即等号两边不能有任何空格)
这种方法最好,除非你手动强制修改PATH的值,否则将不会被改变
3.#vi ~/.bash_profile
修改PATH行,把/etc/apache/bin添加进去
这种方法是针对用户起作用的
注意:想改变PATH,必须重新登陆才能生效,以下方法可以简化工作:
如果修改了/etc/profile,那么编辑结束后执行source profile(source /etc/profile) 或 执行点命令 ./profile,PATH的值就会立即生效了。
这个方法的原理就是再执行一次/etc/profile shell脚本,注意如果用sh /etc/profile是不行的,因为sh是在子shell进程中执行的,即使PATH改变了也不会反应到当前环境中,但是source是在当前 shell进程中执行的,所以我们能看到PATH的改变。
这样你就学会Linux系统下修改环境变量PATH路径的方法。
补充说明
工作环境设置文件
环境设置文件有两种:系统环境设置文件 和 个人环境设置文件
1.系统中的用户工作环境设置文件:
登录环境设置文件:/etc/profile
非登录环境设置文件:/etc/bashrc
2.用户个人设置的环境设置文件:
登录环境设置文件: $HOME/.bash_profile //这个是环境变量设置的地方
非登录环境设置文件:$HOME/.bashrc //这个是定义别名的地方
登录环境:指用户登录系统后的工作环境
非登录环境:指用户再调用子shell时所使用的用户环境
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)