1. 程式人生 > >Linux Shell 內建命令 : builtin 命令詳解

Linux Shell 內建命令 : builtin 命令詳解

builtin命令用於執行指定的shell內部命令,並返回內部命令的返回值。builtin命令在使用時,將不能夠再使用Linux中的外部命令。當系統中定義了與shell內部命令相同的函式時,使用builtin顯式地執行shell內部命令,從而忽略定義的shell函式。

語法

builtin shell-builtin [arguments]

引數

shell內部命令:指定需要執行的shell內部命令。

例項

使用builtin命令執行shell內部命alias顯示命令別名,輸入如下命令:

builtin alias                 #執行shell內部指令
alias cp='cp -i'
alias l.='ls -d .* --color=tty'
alias ll='ls -l --color=tty'
alias ls='ls --color=tty'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

builtin命令用以執行shell的內建命令,既然是內建命令,為什麼還要以這種方式執行呢?因為shell命令執行時首先從函式開始,如果自定義了一個與內建命令同名的函式,那麼就執行這個函式而非真正的內建命令。

下面以shell內建命令umask為例說明:


$ umask
0002
$ umask() { echo "umask function"; }
$ umask
umask function
$ builtin umask
0002
$ unset -f umask
$ umask
0002