close

書-Linux命令行與shell腳本編程大全(第3版)

我會把使用者名稱遮住,因為要保護個人隱私(・ω・)v

●內建命令與外部命令

○指令:history、!!、!

 

內建命令與外部命令

外部命令:

也被稱'文件系統命令',通常存在於/bin、/usr/bin、/sbin、usr/sbin。

我們所使用的ps就是外部命令,只要使用type只要顯示上面的目錄名稱都是外部命令。

$which ps

$type -a ps

$ls -l /bin/ps

image

使用ps命令時,是由父shell創建一個子shell去執行ps命令,此過程稱為衍生(forking)。

內建命令:

跟內部命令相反,只要使用了type不是上述目錄內的都是內建命令,因為不用衍生出子shell所以速度會比較快。

$type cd

$type fc

image

有些指令有內部指令也有外部指令。

$type -a echo

$type -a pwd

image

用which只看的到外部命令。

image

指令:history、!!、!

$history

打上指令history就會顯示出你使用過的指令(1000筆)

image

一般來說要使用上一個指令通常都是用上鍵就可以找到,但是使用兩個驚嘆號'!!'就會幫你直接執行上個執行的指令很方便。

image

$cat .bash_history

使用此指令也可以看到紀錄,是個隱藏文件,但是當前CIL(命令行介面)所打的指令會先存放在內存中,結束時才會寫入歷史紀錄中。

image

$history -a

$history -n

只要用了第1個指令就可以強制把指令寫到歷史紀錄中

第1個指令僅限於開啟1個CIL的情況下,所以如果開多個CIL用history -a 就只會寫入第1個CIL,history -n就是強制寫入所有的CIL的歷史指令。

image

image

image

image

$history

$!182

使用history後會看到旁邊有編號,只要驚嘆號+編號就可以直接執行編號中的命令,很方便

image

image

下集待續

arrow
arrow
    創作者介紹
    創作者 讀書小天地 的頭像
    讀書小天地

    書籍分享天地

    讀書小天地 發表在 痞客邦 留言(0) 人氣()