溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

shell腳本字符串截取的多種方法

發(fā)布時間:2020-08-17 06:35:45 來源:網(wǎng)絡 閱讀:604 作者:小鎮(zhèn)青苔 欄目:網(wǎng)絡安全


1、cut命令

cut命令主要是接受三個定位方法:

第一,字節(jié)(bytes),用選項-b

第二,字符(characters),用選項-c

第三,域(fields),用選項-f

str="abchyew2635"
echo $str|cut -c 6-9

結果:

yew2


2、# 號截取,刪除左邊字符,保留右邊字符  

var="hello world"                    
echo ${var#*l}
結果:
lo world

其中 var 是變量名,# 號是運算符,*l 表示從左邊開始刪除第一個 l及左邊的所有字符
即刪除 hel      

                                                                                              

3、## 號截取,刪除左邊字符,保留右邊字符。

 var="hello world"
 echo ${var##*l}
 結果:
 d


##*l 表示從左邊開始刪除最后(最右邊)一個l及左邊的所有字符
即刪除 hello worl


4、%號截取,刪除右邊字符,保留左邊字符

var="hello world"
echo ${var%l*}
結果:
hello wor


%l* 表示從右邊開始,刪除第一個l及右邊的字符

即刪除d


5、%% 號截取,刪除右邊字符,保留左邊字符

var="hello world"
 echo ${var%%l*}
 結果:
 he


%%l* 表示從右邊開始,刪除最后(最左邊)一個l及右邊的字符

即刪除llo world


6、從左邊第幾個字符開始,及字符的個數(shù)

var="hello world"
echo ${var:0:3}
結果:
hel



其中的 0 表示左邊第一個字符開始,3表示字符的總個數(shù)。


7、從左邊第幾個字符開始,一直到結束。

var="hello world"
echo ${var:2}
結果:
llo world


其中的 2表示左邊第3個字符開始,一直到結束。


8、從右邊第幾個字符開始,及字符的個數(shù)

var="hello world"
echo ${var:0-2:3}
結果:
ld


其中的 0-2 表示右邊算起第二個字符開始,3 表示字符的個數(shù)。


9、從右邊第幾個字符開始,一直到結束。

var="hello world"
echo ${var:0-2}
結果:
ld


表示從右邊第二個字符開始,一直到結束。


總代碼:

#!/bin/bash
var="hello world"
echo ${var#*l}
echo ${var##*l}
echo ${var%l*}
echo ${var%%l*}
echo ${var:0:3}
echo ${var:2}
echo ${var:0-2:3}
echo ${var:0-2}


[fbl@www test6_16]$ ./string.sh 
lo world
d
hello wor
he
hel
llo world
ld
ld


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI