Linux Bash內(nèi)置命令大全詳細(xì)介紹
主要Shell內(nèi)置命令
Shell有很多內(nèi)置在其源代碼中的命令。這些命令是內(nèi)置的,所以Shell不必到磁盤(pán)上搜索它們,執(zhí)行速度因此加快。不同的Shell內(nèi)置命令有所不同。
A.2.1 bash內(nèi)置命令
.:執(zhí)行當(dāng)前進(jìn)程環(huán)境中的程序。同source。
. file:dot命令從文件file中讀取命令并執(zhí)行。
: 空操作,返回退出狀態(tài)0。
alias:顯示和創(chuàng)建已有命令的別名。
bg:把作業(yè)放到后臺(tái)。
bind:顯示當(dāng)前關(guān)鍵字與函數(shù)的綁定情況,或?qū)㈥P(guān)鍵字與readline函數(shù)或宏進(jìn)行綁定。
break:從最內(nèi)層循環(huán)跳出。
builtin [sh-builtin [args]]:運(yùn)行一個(gè)內(nèi)置Shell命令,并傳送參數(shù),返回退出狀態(tài)0。當(dāng)一個(gè)函數(shù)與一個(gè)內(nèi)置命令同名時(shí),該命令將很有用。
cd [arg]:改變目錄,如果不帶參數(shù),則回到主目錄,帶參數(shù)則切換到參數(shù)所指的目錄。
command comand [arg]:即使有同名函數(shù),仍然執(zhí)行該命令。也就是說(shuō),跳過(guò)函數(shù)查找。
declare [var]:顯示所有變量,或用可選屬性聲明變量。
dirs:顯示當(dāng)前記錄的目錄(pushd的結(jié)果)。
disown:從作業(yè)表中刪除一個(gè)活動(dòng)作業(yè)。
echo [args]:顯示args并換行。
enable:?jiǎn)⒂没蚪肧hell內(nèi)置的命令。
eval [args]:把a(bǔ)rgs讀入Shell,并執(zhí)行產(chǎn)生的命令。
exec command:運(yùn)行命令,替換掉當(dāng)前Shell。
exit [n]:以狀態(tài)n退出Shell。
export [var]:使變量可被子Shell識(shí)別。
fc:歷史的修改命令,用于編輯歷史命令。
fg:把后臺(tái)作業(yè)放到前臺(tái)。
getopts:解析并處理命令行選項(xiàng)。
hash:控制用于加速命令查找的內(nèi)部哈希表。
help [command]:顯示關(guān)于內(nèi)置命令的有用信息。如果指定了一個(gè)命令,則將顯示該命令的詳細(xì)信息。
history:顯示帶行號(hào)的命令歷史列表。
jobs:顯示放到后臺(tái)的作業(yè)。
kill [-signal process]:向由PID號(hào)或作業(yè)號(hào)指定的進(jìn)程發(fā)送信號(hào)。輸入kill-l查看信號(hào)列表。
let:用來(lái)計(jì)算算術(shù)表達(dá)式的值,并把算術(shù)運(yùn)算的結(jié)果賦給變量。
local:用在函數(shù)中,把變量的作用域限制在函數(shù)內(nèi)部。
logout:退出登錄Shell。
popd:從目錄棧中刪除項(xiàng)。
pushd:向目錄棧中增加項(xiàng)。
pwd:打印出當(dāng)前的工作目錄。
read [var]:從標(biāo)準(zhǔn)輸入讀取一行,保存到變量var中。
readonly [var]:將變量var設(shè)為只讀,不允許重置該變量。
return [n]:從函數(shù)中退出,n是指定給return命令的退出狀態(tài)值。
set:設(shè)置選項(xiàng)和位置參量。
shift [n]:將位置參量左移n次。
stop pid:暫停第pid號(hào)進(jìn)程的運(yùn)行。
suspend:終止當(dāng)前Shell的運(yùn)行(對(duì)登錄Shell無(wú)效)。
test:檢查文件類(lèi)型,并計(jì)算條件表達(dá)式。
times:顯示由當(dāng)前Shell啟動(dòng)的進(jìn)程運(yùn)行所累計(jì)用戶時(shí)間和系統(tǒng)時(shí)間。
trap [arg] [n]:當(dāng)Shell收到信號(hào)n(n為0、1、2或15)時(shí),執(zhí)行arg。
type [command]:顯示命令的類(lèi)型,例如:pwd是Shell的一個(gè)內(nèi)置命令。
typeset:同declare。設(shè)置變量并賦予其屬性。
ulimit:顯示或設(shè)置進(jìn)程可用資源的***限額。
umask [八進(jìn)制數(shù)字]:用戶文件關(guān)于屬主、屬組和其他用戶的創(chuàng)建模式掩碼。
unalias:取消所有的命令別名設(shè)置。
unset [name]:取消指定變量的值或函數(shù)的定義。
wait [pid#n]:等待pid號(hào)為n的后臺(tái)進(jìn)程結(jié)束,并報(bào)告它的結(jié)束狀態(tài)。