当我们使用诸如ls、mkdir、cd这些命令的时候,有没有想过为啥我们就能直接调用?换句话说,在我们输入这个命令的时候系统是怎么知道这个命令的执行文件在哪呢?
答案就是$PATH这个环境变量,可以用echo $PATH把它打印出来看一下。

可以看到这个变量包含了许多用分号分隔开的目录,环境变量的意义在于,当你输入一个命令的时候,系统会在环境变量所定义的诸多目录中去寻找,寻找到了则调用。如有多个匹配的,则调用第一个匹配的。
注:
- 不同身份用户的默认的PATH也不同,默认能够随意执行的命令也不同。
- PATH是可以修改的,所以一般用户还是可以通过修改PATH来执行某些位于
/sbin或/usr/sbin下的命令 - 使用绝对路径或相对路径直接指定某个命令的文件名来执行,会比查询PATH来的正确
- 命令应该要放置到正确的目录下,执行才会比较方便
博客介绍了环境变量PATH的作用。当输入命令时,系统会在PATH定义的目录中寻找执行文件,若有多个匹配则调用第一个。不同身份用户默认的PATH不同,且PATH可修改。使用绝对路径或相对路径指定文件名执行命令更准确,命令应放在正确目录。
7万+

被折叠的 条评论
为什么被折叠?



