1.环境变量
Linux中环境变量包括系统级和用户级。
系统级的环境变量是每个登录到系统的用户都要读取的系统变量
用户级的环境变量则是该用户使用系统时加载的环境变量。
所以管理环境变量的文件也分为系统级和用户级的.
2.系统级
/etc/environment: 是系统在登录时读取的第一个文件,用于为所有进程设置环境变量
系统使用此文件时并不是执行此文件中的命令,根据KEY=VALUE模式的代码,对KEY赋值以VALUE,
因此文件中如果要定义PATH环境变量,只需加入形如PATH=$PATH:/xxx/bin的代码即可。
/etc/profile:是系统登录时执行第一个文件,可以用户设定针对全系统所有用户的环境变量。该文件一般是调用/etc/bash.bashrc文件。
/etc/bashrc:系统级的bashrc文件,为每一个运用bash shell的用户执行此文件。此文件会在用户每次打开shell时执行一次。
注意: /etc/environment是设置整个系统的环境,这/etc/profile是设置所有用户的环境,前者与登录用户有关,后者与登录用户有关。 这两个文件修改后一般都要重启系统才能有效
3. 用户级
~/.bash_profile: 是对应当前登录⽤户的.bash_profile文件,用于定制当前用户的个体工作环境。
每个用户都可使用该用户文件输入使用的shell信息,当用户登录时,该文件仅仅一次默认情况下,
他设置这些环境变量,执行用户的.bashrc文件。这些是推荐放置个设置的地文~/.bashrc: 是对应当前登录用户的bash初始化文件,当用户每次打开shell时,系统都会执行此文件一次。
那么根据以上描述,这一个文件的执行先后顺序应当是:
/etc/enviroment –>/etc/profile –>~/.profile –>/etc/bash.bashrc–> ~/.bashrc
4. Linux的变量种类
按变量的预存周期来划分,Linux变量可分为两类:
临时的 | 使用export命令声明即可,变量在关闭shell时失效。 |
---|---|
永久的 | 需要修改配置文件,变量永久生效 |
配置临时环境
终端输入:
export a=2
export CD_PATH=/mnt/cdrom
终端查看一个特定环境变量包含的内容
echo $a
echo $CD_PATH
5.配置永久环境变量
如果希望此环境变量每次开机或打开shell时自动设定必须每次都自动设定,那么需要将export命令写
用以上的系统文件中。
编辑当前⽤户环境变量文件:
vi ~/.bash_profile
export CD_PATH=/mnt/cdrom
export a=/home/u01
export b=hello
export cp_a=$a
使其立即生效
source ~/.bash_profile 通过source使其生效(或者重新切换至该用户)
source .bash_profile
查看该变量是否配置成功
echo
路径环境变量
export PATH=/bin/bash:/bin/sbin
export PATH=$PATH:/home/dong/path1
# echo $PATH
6.查看环境变量
查看当前用户所有环境变量信息
env
export
查看某一环境变量信息
env | grep {xxx}
echo ${xxx}
撤销/清除环境变量
#unset
export TEST=“hello test”
env | grep TEST
unset TEST
env | grep TEST
常用的环境变量
PATH | 决定了shell将到哪些目录中寻找命令或程序 |
---|---|
HOME | 当前用户主目录 |
HISTSIZE | 历史记录数 |
LOGNAME | 当前用户的登录名 |
HOSTNAME | 指主机的名称 |
SHELL | 当前用户Shell类型 |
LANGUGE | 语法相关的环境变量,多语法可以修改此环境变量 |
PS1 | 基本提示符,对于root用户是#,对于普通用户 |