標籤:bsp 方式 tde 輸出 png 字元 開始 替代 分享
1、 變數內容的刪除與替換
#代表由前面開始刪除,所以這裡便由開始的/刪起,*來代替0到無窮多個任一字元
%由後面向前刪除變數內容
例如:echo ${path%:*bin}刪除最有一個目錄,即從:到bin為止的字串並且是最短的
echo ${path/sbin/SBIN}:兩個斜線中間的是舊字元,後面的是新字元
變數設定方式 |
說明 |
${變數#關鍵字} |
若變數內容從頭開始的資料符合“關鍵字”,則將符合的最短資料刪除 |
${變數##關鍵字} |
若變數內容從頭開始的資料符合“關鍵字”,則將符合的最短資料刪除 |
${變數%關鍵字} |
若變數內容從尾向前的資料符合“關鍵字”,則將符合的最短資料刪除 |
${變數%%關鍵字} |
若變數內容從尾向前的資料符合“關鍵字”,則將符合的最長資料刪除 |
${變數/舊字串/新字串} |
若變數內容符合“舊字串”,則第一箇舊字串會被新字串替換 |
${變數//舊字串/新字串} |
若變數內容符合“舊字串”,則全部的舊字串會被新字串替換 |
2、變數的測試與內容替換
變數設定方式 |
Str沒有設定 |
Str為空白字串 |
Str已設定非為空白字串 |
Var=${str-expr} |
Var=expr |
Var= |
Var=$str |
Var=${str:-expr} |
Var=expr |
Var=expr |
Var=$str |
Var=${str+expr} |
Var= |
Var=expr |
Var=expr |
Var=${str:+expr} |
Var= |
Var= |
Var=expr |
Var=${str=expr} |
Str=expr var=expr |
str不變 var= |
str不變 var=$str |
Var=${str:=expr} |
Str=expr var=expr |
Str=expr var=expr |
str不變 var=$str |
Var=${str?expr} |
expr輸出至stderr |
Var= |
Var=str |
Var=${str:?expr} |
expr輸出至stderr |
expr輸出至stderr |
Var=str |
Shell與shellscript學習筆記之三(變數內容的刪除、替代與替換)