Bash Shell 含有許多常用的命令,這些命令都已經內建在了 Shell 中。在使用這些命令時,執行速度就要快很多。下表列出了 Bash Shell 中直接可用的內建命令。
如果你不了解什麼是內建命令,請轉到:Shell內建命令
Bash Shell 內建命令
命令 |
說明 |
: |
擴充套件參數列,執行重定向操作 |
. |
讀取並執行指定檔案中的命令(在當前 shell 環境中) |
alias |
為指定命令定義一個別名 |
bg |
將作業以後台模式執行 |
bind |
將鍵盤序列系結到一個 readline 函數或宏 |
break |
退出 for、while、select 或 until 迴圈 |
builtin |
執行指定的 shell 內建命令 |
caller |
返回活動子函數呼叫的上下文 |
cd |
將當前目錄切換為指定的目錄 |
command |
執行指定的命令,無需進行通常的 shell 查詢 |
compgen |
為指定單詞生成可能的補全匹配 |
complete |
顯示指定的單詞是如何補全的 |
compopt |
修改指定單詞的補全選項 |
continue |
繼續執行 for、while、select 或 until 迴圈的下一次疊代 |
declare |
宣告一個變數或變數型別。 |
dirs |
顯示當前儲存目錄的列表 |
disown |
從進程作業表中刪除指定的作業 |
echo |
將指定字串輸出到 STDOUT |
enable |
啟用或禁用指定的內建shell命令 |
eval |
將指定的引數拼接成一個命令,然後執行該命令 |
exec |
用指定命令替換 shell 進程 |
exit |
強制 shell 以指定的退出狀態碼退出 |
export |
設定子 shell 進程可用的變數 |
fc |
從歷史記錄中選擇命令列表 |
fg |
將作業以前台模式執行 |
getopts |
分析指定的位置引數 |
hash |
查詢並記住指定命令的全路徑名 |
help |
顯示幫助檔案 |
history |
顯示命令歷史記錄 |
jobs |
列出活動作業 |
kill |
向指定的進程 ID(PID) 傳送一個系統信號 |
let |
計算一個數學表示式中的每個引數 |
local |
在函數中建立一個作用域受限的變數 |
logout |
退出登入 shell |
mapfile |
從 STDIN 讀取資料行,並將其加入索引陣列 |
popd |
從目錄棧中刪除記錄 |
printf |
使用格式化字串顯示文字 |
pushd |
向目錄棧新增一個目錄 |
pwd |
顯示當前工作目錄的路徑名 |
read |
從 STDIN 讀取一行資料並將其賦給一個變數 |
readarray |
從 STDIN 讀取資料行並將其放入索引陣列 |
readonly |
從 STDIN 讀取一行資料並將其賦給一個不可修改的變數 |
return |
強制函數以某個值退出,這個值可以被呼叫指令碼提取 |
set |
設定並顯示環境變數的值和 shell 屬性 |
shift |
將位置引數依次向下降一個位置 |
shopt |
開啟/關閉控制 shell 可選行為的變數值 |
source |
讀取並執行指定檔案中的命令(在當前 shell 環境中) |
suspend |
暫停 Shell 的執行,直到收到一個 SIGCONT 信號 |
test |
基於指定條件返回退出狀態碼 0 或 1 |
times |
顯示累計的使用者和系統時間 |
trap |
如果收到了指定的系統信號,執行指定的命令 |
type |
顯示指定的單詞如果作為命令將會如何被解釋 |
typeset |
宣告一個變數或變數型別。 |
ulimit |
為系統使用者設定指定的資源的上限 |
umask |
為新建的檔案和目錄設定預設許可權 |
unalias |
刪除指定的別名 |
unset |
刪除指定的環境變數或 shell 屬性 |
wait |
等待指定的進程完成,並返回退出狀態碼 |
相比外部命令,內建命令提供了更高的效能,但 Shell 中包含的內建命令越多,消耗的記憶體就會越大,而有些命令幾乎永遠也不會用到。