1 $相關關鍵詞
shell中與@和n等經常被使用,但是有時候仍然對部分符號記憶不是很深刻,特地整理成表格方便記憶。
- | 描述 | 備註 |
---|---|---|
$0 | 當前腳本文件名 | |
$n | 傳遞給腳本或函數的參數 | |
$# | 傳遞給腳本或函數的所有參數個數 | |
$* | 傳遞給腳本或函數的所有參數 | 當它們被雙引號(" “)包含時,”$*" 會將所有的參數作爲一個整體,以"$1 $2 … n"的形式輸出所有參數;"n"的形式輸出所有參數; |
$@ | 傳遞給腳本或函數的所有參數 | “@” 會將各個參數分開,以"$1" “2"…“2”…"n” 的形式輸出所有參數。 |
$$ | shell本身的pid | |
$! | Shell最後運行的後臺Process的PID | |
$? | 最後運行的命令的結束代碼(返回值) | |
$(cmd) | cmd執行命令返回值轉換成字符串輸出 | 等同於`` |
${} | 變量的正規表達式 | |
2 shell括號梳理
符號 | 描述 | 描述 |
---|---|---|
() 小括號 | 指令羣組有一個特性,shell會以產生 subshell來執行這組指令 | |
(( )) 雙括號 | 這組符號的作用與 let 指令相似,用在算數運算上,是 bash 的內建功能。所以,在執行效率上會比使用 let指令要好許多。 | |
{ }大括號 | 一段指令;函數括號 | 類似於指令羣組,但是不會產生subshell |
[] 中括號 | 1、流程控制中判斷式子 2、正則表達式中範圍 rm -fr 200[1234] |
|
[[ ]]雙中括號 | 與[]作用基本相同 | |