什麼是bash shell的內建(build in)命令 1.什麼是build in命令: shell內建命令是指bash(或其它版本)工具集中的命令。一般都會有一個與之同名的系統命令,比如bash中的echo命令與/bin/echo是兩個不同的命令,儘管他們行為大體相仿。當在bash中鍵入一個命令時系統會先看他是否是一個內建命令,如果不是才會查看是否是系統命令或第三方工具。所以在bash中鍵入echo命令實際上執行bash工具集中的bash命令也就是內建命令,而不是/bin/echo這個系統命令。 2.內建命令與系統命令 內建命令要比系統論命令有比較高的執行效率。外部命令執行時往往需要fork出(產生出)一個子進程,而內建命令一般不用。下面(或許以後還會有)這一篇文章將介簡bash的內建命令。 3.查看一個命令是系統命令還是內建命令:typehyk@hyk-linux:~/Documents$ type -a pwdpwd is a shell builtinpwd is /bin/pwd hyk@hyk-linux:~/Documents$ type -a echoecho is a shell builtinecho is /bin/echo可以看出,有些命令,echo和pwd同時是內建命令和系統命令。 4.常見命令的類型[root@new55 ~]# type -a cd cd is a shell builtin[root@new55 ~]# type -a pwd pwd is a shell builtinpwd is /bin/pwd[root@new55 ~]# type -a time time is a shell keywordtime is /usr/bin/time[root@new55 ~]# type -a date date is /bin/date[root@new55 ~]# type -a which which is aliased to `alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'which is /usr/bin/which[root@new55 ~]# type -a whereis whereis is /usr/bin/whereis[root@new55 ~]# type -a whatis whatis is /usr/bin/whatis[root@new55 ~]# type -a function function is a shell keyword[root@new55 ~]# type -a ls ls is aliased to `ls --color=tty'ls is /bin/ls[root@new55 ~]# type -a ll ll is aliased to `ls -l --color=tty'[root@new55 ~]# type -a echo echo is a shell builtinecho is /bin/echo[root@new55 ~]# type -a bulitin -bash: type: bulitin: not found[root@new55 ~]# type -a builtin builtin is a shell builtin[root@new55 ~]# type -a keyword -bash: type: keyword: not found[root@new55 ~]# type -a command command is a shell builtin[root@new55 ~]# type -a alias alias is a shell builtin[root@new55 ~]# type -a grep grep is /bin/grep[root@new55 ~]#