五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網 會員登陸 & 注冊

TLCL學習筆記|第35章|字符串和數字|part1(參數展開)

2022-05-06 02:18 作者:LogByMax  | 我要投稿

(認知有限,如有不妥,還望告知,歡迎討論)


參數展開時注意使用{}

eg.

管理空變量的展開

${parameter:-word}

若 parameter 沒有設置(例如,不存在)或者為空,展開結果是 word 的值。若 parameter 不為空,則展開結果是 parameter 的值。

${parameter:=word}

若 parameter 沒有設置或為空,展開結果是 word 的值。另外,word 的值會賦值給 parameter。 若 parameter 不為空,展開結果是 parameter 的值。

${parameter:?word}

若 parameter 沒有設置或為空,這種展開導致腳本帶有錯誤退出,并且 word 的內容會發(fā)送到標準錯誤。若 parameter 不為空, 展開結果是 parameter 的值。

${parameter:+word}

若 parameter 沒有設置或為空,展開結果為空。若 parameter 不為空, 展開結果是 word 的值會替換掉 parameter 的值;然而,parameter 的值不會改變。

字符串展開

${#parameter}

展開成由 parameter 所包含的字符串的長度。



${parameter:offset}?和?${parameter:offset:length}

從 parameter 所包含的字符串中提取一部分字符。提取的字符始于 第 offset 個字符(從字符串開頭算起)直到字符串的末尾,除非指定提取的長度。



${parameter#pattern} 和?${parameter##pattern}

從 paramter 所包含的字符串中清除開頭一部分文本,#清除最短匹配結果,##清除最長匹配結果。(我現在也不知道這有什么用。。。)



${parameter%pattern} 和?${parameter%%pattern}

類似于上一條,只不過這里反過來,從末尾開始清除

${parameter/pattern/string} 和?${parameter//pattern/string} 和${parameter/#pattern/string}?和?${parameter/%pattern/string}

對 parameter 的內容執(zhí)行查找和替換操作。

上面的操作依次對應:

只將第一個出現的pattern替換成string;

將所有出現的pattern都替換成string;

將出現在開頭的pattern替換成string;

將出現在結尾的pattern替換成string(當/string 省略掉時,可能會導致刪除匹配的文本。)

bash支持字符串的大小寫轉換

第一種方法:使用declare

能強制一個變量總是包含所需的格式,無論如何賦值給它。

(這個例子好像macOS測不了,沒有-u 和-l的參數[1],但是bash文檔里有[2],不知道為什么,后面再看看)

第二種方法:使用對應的參數展開

(不知道為什么的macOS也不行系列。。。)

${parameter,,} ?----?把 parameter 的值全部展開成小寫字母。

${parameter,}??----??僅僅把 parameter 的第一個字符展開成小寫字母。

${parameter^^}??----??把 parameter 的值全部轉換成大寫字母。

${parameter^}??----?僅僅把 parameter 的第一個字符轉換成大寫字母(首字母大寫)。


進制表示

=END=

=reference=

[1]https://ss64.com/osx/declare.html

[2]https://www.gnu.org/software/bash/manual/bash.html#Bash-Builtins

TLCL學習筆記|第35章|字符串和數字|part1(參數展開)的評論 (共 條)

分享到微博請遵守國家法律
普兰县| 云阳县| 西乌珠穆沁旗| 内乡县| 海宁市| 永清县| 苍山县| 米脂县| 延吉市| 云龙县| 西林县| 荣成市| 临江市| 兖州市| 新巴尔虎左旗| 井研县| 绍兴县| 固原市| 金塔县| 甘洛县| 永丰县| 克东县| 卢氏县| 深水埗区| 淄博市| 余江县| 乌恰县| 周至县| 公安县| 盐津县| 林西县| 平和县| 天柱县| 鄂伦春自治旗| 金阳县| 綦江县| 西充县| 大渡口区| 临洮县| 曲靖市| 堆龙德庆县|