shell「內建字串處理」

2021-08-15 18:00:51 字數 2701 閱讀 1452

結了shell中內建的字串處理功能,包括》 ${}

# % :-

:+ ? 等的使用

使用內建操作符處理字串時,效能較好

st

ring

−wor

d:如果

stri

ng沒設

定,則使

用wor

d作為返

回值(空

值和非空

值不做處理)s

trin

g−wo

rd:如

果str

ing沒

設定,則

使用wo

rd作為

返回值(

空值和非

空值不做

處理

): 如果string沒設定或為空值,則使用word作為返回值(非空值時不做處理) 經常使用 st

ring

+wor

d:如果

stri

ng設定

了(空值

或非空值

),則使

用wor

d作為返

回值(沒

有設定不

做處理)st

ring

+wor

d:如果

stri

ng設定

了(空值

或非空值

),則使

用wor

d作為返

回值(沒

有設定不

做處理)

: 如果string為非空值,則使用word作為返回值(沒設定或空值時不做處理) st

ring

=wor

d:如果

stri

ng沒設

定,則使

用wor

d作為返

回值,同

時將wo

rd值賦

值給st

ringst

ring

=wor

d:如果

stri

ng沒設

定,則使

用wor

d作為返

回值,同

時將wo

rd值賦

值給st

ring

: 如果string沒設定或為空值,則使用word作為返回值,同時將word複製給string st

ring

?wor

d:如果

stri

ng沒有

設定,則

將wor

d輸出到

stde

rr(空

值及非空

值不做處理)s

trin

g?wo

rd:如

果str

ing沒

有設定,

則將wo

rd輸出

到std

err(

空值及非

空值不做

處理

): 如果string沒設定或為空值,則將word輸出到stderr(非空值不做處理)

$ (#號也稱為為number sign )

設定string=』

$ : 刪掉第乙個/及其左邊的字串,返回:/www.codeshold.me/2016/11/mac_skills.html

$: 刪掉最後乙個/及其左邊的字串, 返回mac_skills.html

$ : 刪掉最後乙個/及其右邊的字串,返回

$: 刪除第乙個/及其右邊的字串,返回http:

類似的有

刪掉第乙個.及其左邊的字串,

刪掉第乙個.及其左邊的字串,

刪掉最後乙個.及其右邊的字串

記憶方法:

# 表示從左往右匹配(鍵盤上 # 在 $ 的左邊)

% 表示從右往左匹配(鍵盤上 % 在 $ 的右邊)

單一符號是最小匹配(非貪婪);兩個符號是最大匹配(貪婪匹配)

$從字串開頭開始配備substring,刪除匹配上的表示式

$從字串結尾開始配備substring,刪除匹配上的表示式

設定string=abcdefg,字串的下標從0開始

$ : 返回string中從第3個到結束的所有字元,即cdefg

$ : 返回string中從第1個到結束的所有字元,即abcdefg

$ : 返回string中從第1個開始的5個字元,即abcde

$ : 返回string中最後乙個字元, 即g

$ : 返回string中從倒數第3個字元到結束的所有字元, 即efg

$: 返回string中從倒數第3個字元開始的2個字元,即ef

記憶方法:

$

設定string=/dir1/dir2/dir3

$ : 將第乙個dir替換成swf,返回/swf1/dir2/dir3

$ : 將全部的dir替換成swf,返回/swf1/swf2/swf3

記憶方法:

兩個符號//表示貪婪匹配(全部替換)

$查詢中出現了」/」要加轉義符」\/」表示

**:

shell字串處理

一 構造字串 直接構造 str zero hello str first i am a string str second success 重複多次 repeat the first parm 1 by 2 times strrepeat 舉例 str repeat strrepeat user n...

shell 字串處理

一 號擷取,刪除左邊字元,保留右邊字元。echo 其中 var 是變數名,號是運算子,表示從左邊開始刪除第乙個 號及左邊的所有字元 即刪除 http 結果是 www.google.com test.htm 二 號擷取,刪除左邊字元,保留右邊字元。echo 表示從左邊開始刪除最後 最右邊 乙個 號及左...

SHELL字串處理

linux 的字串擷取很有用。有八種方法。假設有變數 var 1.號擷取,刪除左邊字元,保留右邊字元。複製 如下 echo 其中 var 是變數名,號是運算子,表示從左邊開始刪除第乙個 號及左邊的所有字元 即刪除 http 結果是 www.aaa.com 123.htm 2.號擷取,刪除左邊字元,保...