sed 字串替換

2022-08-27 12:54:06 字數 1302 閱讀 8299

1. sed替換的基本語法為:

sed 's/原字串/替換字串/'

單引號裡面,s表示替換,三根斜線中間是替換的樣式,特殊字元需要使用反斜線」\」進行轉義。

2. 單引號」 『 』」是沒有辦法用反斜線」\」轉義的,這時候只要把命令中的單引號改為雙引號就行了,格式如下:

# 要處理的字元包含單引號 sed "s/原字串包含'/替換字串包含'/" 

3. 命令中的三根斜線分隔符可以換成別的符號,有時候替換目錄字串的時候有較多斜線,這個時候換成其它的分割符是較為方便,只需要緊跟s定義即可。

# 將分隔符換成問號」?」: sed 's?原字串?替換字串?'

4. 可以在末尾加g替換每乙個匹配的關鍵字,否則只替換每行的第乙個,例如:

# 替換所有匹配關鍵字 sed 's/原字串/替換字串/g'

5. 一些特殊字元的使用

」^」表示行首

」$」符號如果在引號中表示行尾,但是在引號外卻表示末行(最後一行)   

# 注意這裡的 " & " 符號,如果沒有 「&」,就會直接將匹配到的字串替換掉 sed 's/^/新增的頭部&/g' #在所有行首新增

sed 's/$/&新增的尾部/g' #在所有行末新增

sed '2s/原字串/替換字串/g'  #替換第2行

sed '$s/原字串/替換字串/g' #替換最後一行

sed '2,5s/原字串/替換字串/g' #替換2到5行

sed '2,$s/原字串/替換字串/g' #替換2到最後一行

6.批量替換字串

sed -i "s/查詢字段/替換字段/g" `grep 查詢字段 -rl 路徑` sed -i "s/oldstring/newstring/g" `grep oldstring -rl yourdir

7. sed處理過的輸出是直接輸出到螢幕上的,使用引數」i」直接在檔案中替換。

# 替換檔案中的所有匹配項 sed -i 's/原字串/替換字串/g' filename

8.sed

# 替換檔案中的所有匹配項,[ctrl+v,ctrl+m]表示不可見的字元,ctrl不要松 sed -i 's/[ctrl+v,ctrl+m]/替換字串/g' filename

9. 多個替換可以在同一條命令中執行,用分號」;」分隔,其格式為:

# 同時執行兩個替換規則 sed 's/^/新增的頭部&/g;s/$/&新增的尾部/g' 

sed 字串替換

1.sed替換的基本語法為 sed s 原字串 替換字串 單引號裡面,s表示替換,三根斜線中間是替換的樣式,特殊字元需要使用反斜線 進行轉義。2.單引號 是沒有辦法用反斜線 轉義的,這時候只要把命令中的單引號改為雙引號就行了,格式如下 要處理的字元包含單引號 sed s 原字串包含 替換字串包含 3...

sed替換字串 變數

sed s 查詢字段 替換字段 g echo helloworld sed s hello world g sed 替換字串以變數形式 1 sed命令使用雙引號的情況下,可以使用 var 變數 直接引用 echo sed s random.rmvb g 13562.rmvb 2 sed命令使用單引號...

Sed替換刪除新增字串

替換當前目錄下所有文字檔案中,hello為world。i就地修改 sed i s hello world txt 替換包含hello的文字為hi,r遞迴,l列出檔案目錄 sed i s hello hi g grep hello rl 刪除包含insert的行 sed i insert d test...