殼層內建指令

(重定向自Shell 內建指令

殼層內建指令(英語:Shell Builtin Command)是指包含在殼層程式碼中一同編譯,屬於殼層程式本身的功能或命令,所有的指令呼叫功能都直接在Shell程式中執行,而非由Shell程式去呼叫外部程式。

殼層內建指令的執行速度通常較外部程式快速,因為這些指令與殼層程式本身同屬一個程式,所以無需額外的程式載入,但是也因為這些功能的程式碼與殼層在同一個檔案中(或是在殼層的原始碼中被包含),所以當需要對這些功能進行修改或更新時,也必須一併修改到殼層,因此殼層內建指令通常為簡易或是不重要的功能,例如,文字輸出。

基於某些作業系統的本質特性,在該系統中會實作必要的一些Shell內建命令,最常見的內建命令就是「cd」(在殼層中移動到指定的工作目錄),由於每個程式在執行時都是一個行程,則每個工作目錄都會被各個行程給參照,所以將 cd 以外部程式的方式呼叫並載入就不會改變殼層目前的工作目錄(因為即使殼層所執行的其他程式的工作目錄改變了,殼層參照的工作目錄仍沒有改變)。

範例

logout、exit是最常見的殼層內建指令,可以登出或中斷終端機連線,這個功能在不同的殼層上有不同的名稱。

bash的cd、echo、history也是常見的殼層內建指令。

help指令可以顯示出所有bash殼層內建指令(help本身也是一個內建指令)。

外部連結