1、本地變量
一、使用場景:本地變量在用戶當前shell生存期的腳本中使用
二、定義賦值的幾種方式:shell
變量名=值 #賦值時不加引號 變量名=‘值’ #賦值時加單引號 變量名=「值」 #賦值時加雙引號
三、定義變量名以及賦值時的要求ide
變量名:通常是字母、數字、下劃線組成,能夠以字母或者下劃線開頭,不能以數字開頭,建議採用駝峯語法來編輯變量名(即當變量名是多個單詞時,除了第一個單詞首字母是小寫,其餘單詞的首字母都是大寫)
賦值:能夠用單引號、雙引號以及不加任何引號,可是三者的含義是不一樣的code
四、三種賦值方式的不一樣之處blog
無引號 :賦值時,字符串
若是值中有空格,則會形成賦值失敗 若是值中有命令、其餘變量,則會先把命令和變量解析後再輸出 若是字符串中帶有空格等特殊字符,則會賦值失敗單引號:賦值時,get
所見即所得,即輸出時會將單引號內的全部內容按原樣輸出,就是你看到什麼就輸出什麼,被稱爲「強引用」雙引號:賦值時,博客
輸出雙引號內的室友內容 若是值中有命令、其餘變量、特殊轉移符等,會先把前三者解析出來再輸出,是⭐️推薦的用法⭐️,被稱爲「弱引用」反引號:順帶說一下,反引號用法。通常用於引用命令,執行的時候命令會被執行,可是通常不推薦用反引號引用命令的方式,而是推薦用 $() 這樣的方式來引用命令。it
五、變量定義以及賦值經驗小結class
1)若變量內容爲連續的數字或者字符串,賦值時,可不加任何引號,例如:abc=123
2)若變量的內容不少時,且有空格和但願被解析的變量,就必須使用雙引號,例如:abc="/etc/rc.local $USER"
3)若但願原樣輸出變量中的內容時必須採用單引號進行復制,例如:abc='$USER'
4)若要引用命令,則用反引號把賦值的命令反引發來,可是建議用$()的方式,而不是反引號,例如:abc=ls
abc=$(ls)
5)使用「echo $變量名」便可以輸出變量的內容,也能夠用printf代替echo輸出更復雜的格式內容
6)當變量後面鏈接有其餘字符的時候,必須給變量加上大括號{},例如:${abc}_def
7)沒有特殊要求時,一概使用雙引號awk
六、三劍客(grep/awk/sed)取用Shell變量時的特殊用法
grep:按前面的正經常使用法
sed:按前面的正經常使用法
awk:⭐️不能按前面的正經常使用法⭐️,awk取用shell變量時的格式例子:NB="dabiaoge" echo "$NB" | awk '{print $0}' echo '$NB' | awk '{print $0}' echo $NB | awk '{print $0}' NB=`pwd` 或者 NB=$(pwd) echo "$NB" | awk '{print $0}' echo '$NB' | awk '{print $0}' echo $NB | awk '{print $0}'
2、我是大表哥,我爲本身帶鹽,之後會不定時更新,請支持正版,盜鏈可恥
個人博客是:https://blog.51cto.com各位朋友有什麼不懂以及認爲有什麼錯誤之處,請在下方留言,謝謝!