主頁(yè) > 知識(shí)庫(kù) > Shell字符串截取的詳細(xì)方法

Shell字符串截取的詳細(xì)方法

熱門標(biāo)簽:服務(wù)外包 AI電銷 網(wǎng)站排名優(yōu)化 Linux服務(wù)器 百度競(jìng)價(jià)排名 地方門戶網(wǎng)站 鐵路電話系統(tǒng) 呼叫中心市場(chǎng)需求

一、Linux shell 截取字符變量的前8位,有方法如下:

復(fù)制代碼 代碼如下:

1.expr substr “$a” 1 8
2.echo $a|awk ‘{print substr(,1,8)}'
3.echo $a|cut -c1-8
4.echo $
5.expr $a : ‘\(.\\).*'
6.echo $a|dd bs=1 count=8 2>/dev/null

二、按指定的字符串截取
1、第一種方法:
${varible##*string} 從左向右截取最后一個(gè)string后的字符串
${varible#*string}從左向右截取第一個(gè)string后的字符串
${varible%%string*}從右向左截取最后一個(gè)string后的字符串
${varible%string*}從右向左截取第一個(gè)string后的字符串
“*”只是一個(gè)通配符可以不要

例子:

復(fù)制代碼 代碼如下:
$ MYVAR=foodforthought.jpg
$ echo ${MYVAR##*fo}
rthought.jpg
$ echo ${MYVAR#*fo}
odforthought.jpg

2、第二種方法:${varible:n1:n2}:截取變量varible從n1到n2之間的字符串。

可以根據(jù)特定字符偏移和長(zhǎng)度,使用另一種形式的變量擴(kuò)展,來(lái)選擇特定子字符串。試著在 bash 中輸入以下行:

復(fù)制代碼 代碼如下:
$ EXCLAIM=cowabunga
$ echo ${EXCLAIM:0:3}
cow
$ echo ${EXCLAIM:3:7}
abunga

這種形式的字符串截?cái)喾浅:?jiǎn)便,只需用冒號(hào)分開來(lái)指定起始字符和子字符串長(zhǎng)度。

三、按照指定要求分割:
比如獲取后綴名

復(fù)制代碼 代碼如下:
ls -al | cut -d “.” -f2

應(yīng)用心得:

復(fù)制代碼 代碼如下:

$MYVAR="12|dadg"
echo ${MYVAR##*|}   #打印分隔符后的字符串
dafa
echo ${MYVAR%%|*} #打印分隔符前的字符串
12

您可能感興趣的文章:
  • Linux Shell 截取字符串的方法示例
  • shell編程中的字符串截取方法小結(jié)
  • Powershell截取字符串并添加省略號(hào)的例子
  • Shell腳本8種字符串截取方法總結(jié)
  • Shell字符串截取的實(shí)現(xiàn)方法(非常詳細(xì))

標(biāo)簽:銅川 蘭州 湖南 黃山 崇左 湘潭 衡水 仙桃

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Shell字符串截取的詳細(xì)方法》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266