bash的命令補全支持兩種補全方式:
1、命令補全
shell命令分爲兩類,所謂內部命令和外部命令。
外部命令:在系統某路徑下有一個可執行程序。
使用type命令可以查看命令是外部命令還是內部命令。
使用which命令可以查看命令的可執行程序的位置。
但是在任意一個位置輸入命令都可以執行,爲什麼?PATH
PATH: 是一組由冒號分割的路徑。根據PATH環境變量中的路徑一次查找可執行程序。
使用TAB鍵補全命令,實質也是去PATH變量的路徑下去搜索。
hash: 哈希列表,執行命令時,通過PATH環境變量中的路徑查找命令的位置,當找到後,經其記錄到哈希列表中,下次查找時,直接在這個列表中搜索,如果找不到,再去PATH環境變量下的路徑中去尋找對應的可執行程序。
2、路徑補全
給出打頭路徑,則在打頭路徑下查找補全;如果沒有打頭路徑,則在當前路徑下查找補全。