《LINUX教程:Linux命令類型及執行順序》要點:
本文介紹了LINUX教程:Linux命令類型及執行順序,希望對您有用。如果有疑問,可以聯系我們。
一、敕令分類
Linux敕令分為兩類,具體為內部敕令和外部敕令
內部敕令:
? ? ? 指shell內部集成的敕令,此類敕令無需人為安裝,開機后自動運行在內存中,敕令help查看所有內部敕令的詳情,如cd、type、echo、time、true等.
外部敕令:
指通過外部介質安裝的命令對象包,如通過yum、rpm等方式安裝,具體安裝路徑在$PATH下.
敕令查看:
type查看敕令分類,內部敕令顯示 shell相關信息,外部敕令則顯示$PATH路徑,如下圖:
time屬于內部敕令,date屬于外部敕令.
二、命令執行次序
? ? ? 在命令執行過程中,命令形態主要分為4類:alias別號命令、內部命令、hash緩存命令和外部命令.
? ? ? 實例:echo即是內部命令又是外部命令,以echo為例實驗證明其執行次序
? ? ? 1. 將/bin/echo 復制到/usr/local/bin/下,用which -a查看echo的路徑($PATH中/usr/local/bin路徑優先于/bin,則echo優先使用/usr/local/bin/下的echo)
2.查看內部echo,并封閉內部命令的echo,使用echo命令在hash中形成記錄,并查看記錄
? ? 3. 刪除/usr/local/bin下的echo,hash中任然存echo的路徑/usr/local/bin,再次使用echo “welcome to xi'an”
? ? 結論:執行hash中的敕令優先$PATH中的敕令
4. 開啟內部敕令echo,再次執行echo “welcome to xi'an”
結論:闡明內部命令優先于hash緩存命令和外部命令
? ? 5. 定義別名alias echo=“hostname”,如果echo 輸出是hostname的內容時,則注解alias比內部命令優先
總結:命令執行次序為alias——內部命令——hash緩存——外部命令
三、命令分類及查找根本命令
? ? 1. type command 查看是否是內部敕令
? ? 2. which -a| --skip-alias? command? 查看所有包括command的路徑|不查看別名的路徑
? ? 3. enable -n command 封閉內部命令
? ? 4. hash -l 顯示hash緩存 -d 清楚具體緩存敕令路徑 -r 刪除所有敕令路徑
? ? 5. alias 定義別號 ualias取消別號
本文永遠更新鏈接地址:
學習更多LINUX教程,請查看站內專欄,如果有LINUX疑問,可以加QQ交流《LINUX教程:Linux命令類型及執行順序》。