环境变量是一组信息记录,类型是KeyValue型(名=值),用于操作系统运行的时候记录关键信息.
env命令:查看系统全部的环境变量
语法:env
$符号:取出指定的环境变量的值
语法:$变量名
示例:
echo $PATH
,输出PATH环境变量的值
echo ${PATH}ABC
,输出PATH环境变量的值以及ABC。如果变量名和其它内容混淆在一起,可以使用${}
PATH变量
-
环境变量
PATH
会记录一组目录,目录之间用:
隔开。- 这里记录的是命令的搜索路径,当执行命令时会从记录中的目录中逐个搜索要执行的命令并执行。
-
可以通过修改这个项目的值,加入自定义的命令搜索路径。如:
export PATH=$PATH:自定义路径
注意 :修改PATH
时,必须添加$PATH
,否则变成了使用自定义路径
覆盖PATH
的值,而不是给PATH
中添加值
PATH变量使用说明
使用cd
指令运行说明PATH
作用:
无论当前工作目录是什么,都能执行/usr/bin/cd
这个程序,就是借助环境变量中:PATH
这个项目的值来做到的。
-
查看
PATH
变量:env | grep PATH
:PATH=/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/adailly/.local/bin:/home/adailly/bin
-
PATH
记录了系统执行任何命令的搜索路径,如上(路径之间以:
隔开):/usr/local/bin
/usr/bin
/usr/local/sbin
/usr/sbin
/home/adailly/.local/bin
/home/adailly/bin
-
当执行任何命令,都会按照顺序,从上述路径中搜索要执行的程序的本体。
-
执行
cd
命令,就从第二个目录/usr/bin
中搜索到了cd
命令,并执行。 -
可通过
which cd
查找到cd
指令的执行文件路径:/usr/bin/cd
修改环境变量
- 临时设置,语法:
export 变量名=变量值
- 永久生效
- 针对当前用户生效,配置在当前用户的:
~/.bashrc
文件中 - 针对所有用户生效,配置在系统的:
/etc/profile
文件中 - 配置完成,通过:
source
配置文件,进行立刻生效,或重新登录生效
- 针对当前用户生效,配置在当前用户的:
自定义修改环境变量
环境变量PATH
这个项目里面记录了系统执行命令的搜索路径。
这些搜索路径我们也可以自行添加到PATH
中去。
测试:
- 在当前
HOME
目录内创建文件夹myenv
,在文件夹内创建文件mkhello
- 通过
vim
编辑器,在mkhello
文件内填入:echo hello
- 完成上述操作后,随意切换工作目录,执行
mkhello
命令尝试一下,会发现无法执行
修改PATH
的值:
- 临时修改
PATH
:export PATH=$PATH:/home/user/myenv
,再次执行mkhello
,则在任何地方都可以执行 - 或将
export PATH=$PATH:/home/user/myenv
,填入用户环境变量文件或系统环境变量文件中去。 - 执行
source
环境变量文件,则在任何地方都可以执行