一,變量
變量就是計(jì)算機(jī)中用于記錄一個(gè)值(不一定是數(shù)值,也可以是字符或字符串)的符號(hào),而這些符號(hào)將用于不同的運(yùn)算處理中。變量與值是一對(duì)一的關(guān)系。大部分編程語(yǔ)言會(huì)區(qū)分不同類型的變量,shell也是如此。
創(chuàng)建變量:declare
賦值符號(hào):=
讀取變量:echo $
二,環(huán)境變量
1,三種變量類型
-當(dāng)前 Shell 進(jìn)程私有用戶自定義變量,如上面我們創(chuàng)建的 tmp 變量,只在當(dāng)前 Shell 中有效。
-Shell 本身內(nèi)建的變量。
-從自定義變量導(dǎo)出的環(huán)境變量。
2,與三種變量類型相關(guān)的命令
set:顯示當(dāng)前 Shell 所有變量,包括其內(nèi)建環(huán)境變量(與 Shell 外觀等相關(guān)),用戶自定義變量及導(dǎo)出的環(huán)境變量。
env:顯示與當(dāng)前用戶相關(guān)的環(huán)境變量,還可以讓命令在指定環(huán)境中運(yùn)行。
export:顯示從 Shell 中導(dǎo)出成環(huán)境變量的變量,也能通過它將自定義變量導(dǎo)出為環(huán)境變量
3,按照生存周期來(lái)分
永久的:需要修改配置文件,變量永久生效;
臨時(shí)的:使用 export 命令行聲明即可,變量在關(guān)閉 shell 時(shí)失效。
4,變量的修改方式
${變量名#匹配字串}
從頭向后開始匹配,刪除符合匹配字串的最短數(shù)據(jù)
${變量名##匹配字串}
從頭向后開始匹配,刪除符合匹配字串的最長(zhǎng)數(shù)據(jù)
${變量名%匹配字串}
從尾向前開始匹配,刪除符合匹配字串的最短數(shù)據(jù)
${變量名%%匹配字串}
從尾向前開始匹配,刪除符合匹配字串的最長(zhǎng)數(shù)據(jù)
${變量名/舊的字串/新的字串}
將符合舊字串的第一個(gè)字串替換為新的字串
${變量名//舊的字串/新的字串}
將符合舊字串的全部字串替換為新的字串