殼層內建指令

维基百科,自由的百科全书
跳转至: 导航搜索

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

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

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

範例[编辑]

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

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

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

外部連結[编辑]