1.为什么在Linux里可以直接执行命令,比如:
[root@oldboy ~]# ls anaconda-ks.cfg oldboy.txt
解答:
当前目录并没有ls命令,但是确可以执行ls命令,就是因为
命令执行ls命令时,是从PATH环境变量里获取的。
2.什么是PATH?
PATH是一个特殊的系统环境变量,记录Linux里所有命令所在的位置,
当执行命令就会根据PATH里记录的路径来查找命令。
[root@oldboy ~]# echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
上面是输出默认的PATH变量对应的命令路径,以冒号分割。
当在Linux命令行命令时,会从左到右一次查找PATH里的路径,如果有
就执行,如果没有就报错。
[root@oldboy ~]# oldboy -bash: oldboy: 未找到命令
3.export又是什么?
用来设定环境变量内容的一个指令,例如
export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin'
表示定义一个变量,这个变量指定为环境变量。