大家知道,對于熟悉命令行的用戶來說,命令行操作比圖形界面操作高效、簡潔,那么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.www58058.com/80725