下面是有關linux shell 定義變量及特殊變量的總結
單引號 所見即所得
雙引號 解析變量,變量賦值可以不連續
沒有引號 與雙引號類似,但是變量賦值時必須連續
建議 普通字符串盡量用雙引號,連續的數字賦值時不加引號
awk 很特殊,雙引號不解析變量,單引號解析變量
$0 shell本身的文件名
$* 獲取所有參數
$# 獲取參數個數
$$ 獲取當前進程的PID
$! 執行上一個指令的進程號
$? 獲取上個指令的返回值
在寫shell腳本時,exit 1,在函數中的return 1,可以理解為將1賦值給$?
$*與$@的區別
"$*" 所有參數,將所有參數視為單個字符串
"$@" 每個參數是獨立的個體,保留每個參數的空格