變量?jī)?nèi)容的刪除
| 變量設(shè)置方式 | 說(shuō)明 |
|---|---|
| ${變量#關(guān)鍵字} | 若變量?jī)?nèi)容從頭開(kāi)始的數(shù)據(jù)符合“關(guān)鍵字”,則將符合的最短數(shù)據(jù)刪除 |
| ${變量##關(guān)鍵字} | 若變量?jī)?nèi)容從頭開(kāi)始的數(shù)據(jù)符合“關(guān)鍵字”,則將符合的最長(zhǎng)數(shù)據(jù)刪除 |
| ${變量%關(guān)鍵字} | 若變量?jī)?nèi)容從尾向前的數(shù)據(jù)符合“關(guān)鍵字”,則獎(jiǎng)符合的最短數(shù)據(jù)刪除 |
| ${變量%%關(guān)鍵字} | 若變量?jī)?nèi)容從尾向前的數(shù)據(jù)符合“關(guān)鍵字”,則將符合的最長(zhǎng)數(shù)據(jù)刪除 |
變量?jī)?nèi)容的替換
| 變量設(shè)置方式 | 說(shuō)明 |
|---|---|
| ${變量/舊字符串/新字符串} | 若變量?jī)?nèi)容符合“舊字符串”,則第一個(gè)舊字符串會(huì)被新字符串替換 |
| ${變量//舊字符串/新字符串} | 若變量?jī)?nèi)容符合“舊字符串”,則全部的舊字符串會(huì)被 新字符串替換 |
變量的測(cè)試
| 變量設(shè)置方式 | str沒(méi)有設(shè)置 | str為空 | str已經(jīng)設(shè)置非空 |
|---|---|---|---|
| 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=expr | 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 |
例子:

圖片.png

圖片.png