Linux_环境变量 ​


  1. Linux执行的命令在系统中通过文件的方式存储,或者说命令就是一个可执行文件;
  2. 而我们一般执行可执行文件需要用绝对路径或者相对路径找到该文件,才能执行;
  3. 为什么一些系统命令在任何地方都可以直接执行?

查询环境变量

[root@localhost /]# echo $PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

其中冒号分隔,在该变量中包含一下五类路径

/usr/local/sbin

/usr/local/bin

/usr/sbin //非系统正常运行所需要的系统指令

/usr/bin //大部分用户可以指令

/root/bin

以上目录随着发行版本不同会略有区别

在执行命令时候实际上路径为$PATH/XXX,可以理解为环境变量具有补全路径的功能,但是指令是否可以执行还是需要看用户是否有执行权限;

环境变量可以通过修改来增加路径或者删除路径,假设一个路径被删除,用户若还需要执行命令可以利用绝对路径找到该指令执行;

指令按照环境变量先后顺寻查找,假设在/usr/local/sbin与/usr/sbin都有一条指令X,系统默认执行/usr/local/sbin/X