一、环境变量简介:linux
环境变量是具备特殊名字的一个特定对象,包含了一个或多个应用程序运行所需的信息。(例如环境变量PATH,可执行程序的搜索路径,当要求系统运行一个程序,而没告诉系统它的具体路径时,系统就要在PTAH值的路径中寻找此程序,找到去执行)。shell
二、常见环境变量(通常都为大写):bash
PATH :/bin:/usr/bin:/usr/local/bin:/opt/bin:/usr/games/bin。指定SHELL命令的路径,包含了一系列由冒号分隔开的目录,系统就从这些目录里寻找可执行文件。若是你输入的可执行文件,如ls不在这些目录中,系统就没法执行它,除非你输入这个命令的完整路径,如/bin/ls。app
HOME:当前用户的家目录。ide
MAIL:是指当前用户的邮件存放目录。测试
SHELL:是指当前用户用的是哪一种Shell。spa
HISTSIZE:是指保存历史命令记录的条数.net
LOGNAME:是指当前用户的登陆名。orm
HOSTNAME:是指主机的名称,许多应用程序若是要用到主机名的话,一般是从这个环境变量中来取得的。对象
LANG/LANGUGE:是和语言相关的环境变量,使用多种语言的用户能够修改此环境变量。
PS1:是基本提示符,对于root用户是#,对于普通用户是$。
PS2:是附属提示符,默认是“>”。能够经过修改此环境变量来修改当前的命令符,好比下列命令会将提示符修改为字符串“Hello,MyNewPrompt:)”。
三、Linux 中环境变量的文件
当你进入系统的时候,linux 就会为你读入系统的环境变量,这些环境变量存放在环境变量的文件中。Linux 中有不少记载环境变量的文件,它们被系统读入是按照必定的顺序的。
/etc/profile :此文件为系统的环境变量,它为每一个用户设置环境信息,当用户第一次登陆时,该文件被执行。并从/etc/profile.d 目录的配置文件中搜集shell 的设置。
/etc/bashrc :在执行完/etc/profile 内容以后,若是用户的SHELL 运行的是bash ,那么接着就会执行此文件。另外,当每次一个新的bash shell 被打开时, 该文件被读取。
~/.bash_profile :每一个用户均可使用该文件输入专用于本身使用的shell 信息。当用户登陆时,该文件仅仅执行一次,默认状况下,它设置一些环境变量,执行用户的.bashrc 文件。
~/.bashrc :该文件包含专用于单我的的bash shell 的bash 信息,当登陆时以及每次打开一个新的shell 时, 该该文件被读取。
~/.bash_logout :当每次退出系统( 退出bash shell) 时, 执行该文件。
四、设置环境变量经常使用的几个指令
echo:查看显示环境变量,例:echo $PATH
export设置新的环境变量 例:export MYNAME=”LLZZ”
修改环境变量:修改环境变量没有指令,能够直接使用环境变量名进行修改, 例:MYNAME=”ZZLL”
env:查看全部环境变量
set:查看本地定义的全部shell变量
unset:删除一个环境变量 ,例 unset MYNAME
readonly:设置只读环境变量, 例:readonly MYNAME
五、环境变量的设置:
临时设置:
直接用export命令:export PATH=$PATH:/home/u/bin
查看是否已经设好,可用命令export查看: export 或 echo $PATH
永久设置
一、修改profile文件:修 改/etc/profile(对全部用户都是有效的),在里面加入:export PATH=$PATH:/home/u/bin
二、修改~/.bashrc文件。 (每一个用户目录下都有,ls -all,单独用户有效),在里面加入:export PATH=$PATH:/home/u/bin
永久设置方法通常须要从新注销系统才能生效,注销重登录后,能够经过echo命令测试一下。
六、环境变量是和shell紧密相关的,用户登陆系统后就启动了一个shell,对于Linux来讲通常是bash,也能够切换到其余版本的shell。bash有两个基本的系统级配置文件:/etc/bashrc和/etc/profile。这些配置文件包含了两组不一样的变量:shell变量和环境变量。shell变量是局部的,而环境变量是全局的。环境变量是经过shell命令来设置。设置好的环境变量又能够被因此当前用户的程序使用。