大家知道,对于熟悉命令行的用户来说,命令行操作比图形界面操作高效、简洁,那么Linux是如何快速找到命令的位置呢?今天刚学了这一部分,与大家分享。
Linux将命令分为内部命令和外部命令,这是由于一些命令是常用的,需要常驻内存以减少检索时间,所以集成在shell之中,而一些命令不经常用到,所以存放在硬盘之中。具体如何检索请继续欣赏下面的介绍。
使用enable命令可以看到所有的shell内嵌命令。一共有61条。
使用type可以查看命令的属性。
当使用enable –n pwd将pwd命令禁用时,则系统将在内存中找不到pwd命令,此时pwd的属性变为从硬盘查找。
当运行过一次pwd命令时,则会把pwd命令缓存到hash中。以后找命令就会在hash表中查找。
取消pwd的hash,就会发现pwd回到硬盘当中。
最后将pwd重新添加的shell中。
但是,如果将pwd添加一个别名,就会发现pwd是在aliased中,即别名表中。
如果取消pwd的别名,再次type就看到pwd重新回到shell中
由此,我们可以总结出来一下执行命令时系统查找命令的先后顺序。
alias > shell > hash > path路径 。
其中在path路径下找到后将此命令调入hash表中,以便于下次直接调用。
至此,你一定对命令的调用过程有了更进一步的认识。谢谢阅读。
原创文章,作者:myq,如若转载,请注明出处:http://www.178linux.com/80725