麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 開(kāi)發(fā) > Linux Shell > 正文

Linux Shell 截取字符串的方法示例

2020-07-27 18:44:49
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

shell中截取字符串的方法很多

${var#*/}${var##*/}${var%/*}${var%%/*}${var:start:len}${var:start}${var:0-start:len}${var:0-start}

格式 說(shuō)明
${string: start :length} 從 string 字符串的左邊第 start 個(gè)字符開(kāi)始,向右截取 length 個(gè)字符。
${string: start} 從 string 字符串的左邊第 start 個(gè)字符開(kāi)始截取,直到最后。
${string: 0-start :length} 從 string 字符串的右邊第 start 個(gè)字符開(kāi)始,向右截取 length 個(gè)字符。
${string: 0-start} 從 string 字符串的右邊第 start 個(gè)字符開(kāi)始截取,直到最后。
${string#*chars} 從 string 字符串第一次出現(xiàn) *chars 的位置開(kāi)始,截取 *chars 右邊的所有字符。
${string##*chars} 從 string 字符串最后一次出現(xiàn) *chars 的位置開(kāi)始,截取 *chars 右邊的所有字符。
${string%*chars} 從 string 字符串第一次出現(xiàn) *chars 的位置開(kāi)始,截取 *chars 左邊的所有字符。
${string%%*chars} 從 string 字符串最后一次出現(xiàn) *chars 的位置開(kāi)始,截取 *chars 左邊的所有字符。

--------------------------------------------------------------------------------

下面用幾個(gè)例子展示一下:

1) 獲得字符串的長(zhǎng)度

語(yǔ)法:

${#var}

示例代碼:

str="http://www.fengbohello.xin3e.com/blog/shell-truncating-string"echo "string : [${str}]"length=${#str}echo "length : [${length}]"

執(zhí)行結(jié)果:

string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]length : [61]

--------------------------------------------------------------------------------

2) 使用 # 和 ## 獲取尾部子字符串

2.1) # 最小限度從前面截取word

語(yǔ)法:

${parameter#word} 

示例代碼:

str="http://www.fengbohello.xin3e.com/blog/shell-truncating-string"echo "string : [${str}]"#分割符為'/'substr=${str#*/}echo "substr : [${substr}]"

執(zhí)行結(jié)果:

string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]substr : [/www.fengbohello.xin3e.com/blog/shell-truncating-string]

2.2) ## 最大限度從前面截取word

語(yǔ)法:

${parameter##word}

示例代碼:

str="http://www.fengbohello.xin3e.com/blog/shell-truncating-string"echo "string : [${str}]"#分割符為'/'substr=${str##*/}echo "substr : [${substr}]"

執(zhí)行結(jié)果:

string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]substr : [shell-truncating-string]

--------------------------------------------------------------------------------

3) 使用 % 和 %% 獲取頭部子字符串

3.1) % 最小限度從后面截取word

語(yǔ)法:

${parameter%word} 

示例代碼:

str="http://www.fengbohello.xin3e.com/blog/shell-truncating-string"echo "string : [${str}]"substr=${str%/*}echo "substr : [${substr}]"

執(zhí)行結(jié)果:

string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]substr : [http://www.fengbohello.xin3e.com/blog]

3.2) %% 最大限度從后面截取word

語(yǔ)法:

${parameter%%word}

示例代碼:

str="http://www.fengbohello.xin3e.com/blog/shell-truncating-string"echo "string : [${str}]"substr=${str%%/*}echo "substr : [${substr}]"

執(zhí)行結(jié)果:

string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]substr : [http:]

--------------------------------------------------------------------------------

4)使用 ${var:} 模式獲取子字符串

4.1) 指定從左邊第幾個(gè)字符開(kāi)始以及子串中字符的個(gè)數(shù)

語(yǔ)法:

${var:start:len}

示例代碼:

str="http://www.fengbohello.xin3e.com/blog/shell-truncating-string"echo "string : [${str}]"#其中的 0 表示左邊第一個(gè)字符開(kāi)始,7 表示子字符的總個(gè)數(shù)。substr=${str:0:7}echo "substr : [${substr}]"

執(zhí)行結(jié)果:

string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]substr : [http://]

4.2) 從左邊第幾個(gè)字符開(kāi)始一直到結(jié)束

語(yǔ)法:

${var:7}

示例代碼:

str="http://www.fengbohello.xin3e.com/blog/shell-truncating-string"echo "string : [${str}]"#其中的 7 表示左邊第8個(gè)字符開(kāi)始substr=${str:7}echo "substr : [${substr}]"

執(zhí)行結(jié)果:

string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]substr : [www.fengbohello.xin3e.com/blog/shell-truncating-string]

4.3) 從右邊第幾個(gè)字符開(kāi)始以及字符的個(gè)數(shù)

語(yǔ)法:

${var:0-start:len}

示例代碼:

str="http://www.fengbohello.xin3e.com/blog/shell-truncating-string"echo "string : [${str}]"#其中的 0-23 表示右邊算起第23個(gè)字符開(kāi)始,5 表示字符的個(gè)數(shù)substr=${str:0-23:5}echo "substr : [${substr}]"

執(zhí)行結(jié)果:

string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]substr : [shell]

4.4) 從右邊第幾個(gè)字符開(kāi)始一直到結(jié)束

語(yǔ)法:

${var:0-start}

示例代碼:

 

str="http://www.fengbohello.xin3e.com/blog/shell-truncating-string"echo "string : [${str}]"#其中的 0-6 表示右邊算起第6個(gè)字符開(kāi)始substr=${str:0-6}echo "substr : [${substr}]"

執(zhí)行結(jié)果:

string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]substr : [string]

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 中文字幕欧美日韩 | 中国洗澡偷拍在线播放 | 91情侣偷在线精品国产 | 欧美日韩一区三区 | 9999久久久久久 | 一色屋任你操 | 成人毛片100免费观看 | 性少妇videosexfreexxx片 | 黄网站在线免费 | 国产精品视频一区二区三区综合 | 久久国产精品二国产精品中国洋人 | 在线天堂中文在线资源网 | 毛片免费网 | 午夜视频中文字幕 | 免费一级在线观看 | 欧美成人小视频 | 久久国产精品无码网站 | 亚洲精品aaaaa | 成人爱爱电影 | 嗯哈~不行好大h双性 | 国产免费一区二区三区视频 | 久久久久久久久久久久久久av | 亚洲自拍第一 | 国产小视频在线 | 午夜精品老牛av一区二区三区 | 日本中文不卡视频 | 国产成人小视频在线观看 | 国产午夜精品一区二区三区不卡 | 美女又黄又www | 久久久久亚洲精品国产 | 国产成人精品日本亚洲语音 | 欧美成人性生活片 | 欧美人与牲禽动交精品一区 | 少妇一级淫片免费放正片 | 国产一级做a爰片在线看 | 久久精品一二三区白丝高潮 | 怦然心动50免费完整版 | 末成年女av片一区二区 | 国产小视频一区 | 日韩色视频在线观看 | 日韩精品中文字幕在线观看 |