欧美成人午夜免费全部完,亚洲午夜福利精品久久,а√最新版在线天堂,另类亚洲综合区图片小说区,亚洲欧美日韩精品色xxx

扣丁學(xué)堂Linux基礎(chǔ)教程文本處理工具sed命令詳解

2018-07-16 11:00:44 1169瀏覽

sed是一種流編輯器,在linux文本處理中非常常用。它是文本處理中非常中的工具,能夠完美的配合正則表達(dá)式使用,功能不同凡響。處理時,把當(dāng)前處理的行存儲在臨時緩沖區(qū)中,稱為“模式空間”(patternspace),接著用sed命令處理緩沖區(qū)中的內(nèi)容,處理完成后,把緩沖區(qū)的內(nèi)容送往屏幕。接著處理下一行,這樣不斷重復(fù),直到文件末尾。文件內(nèi)容并沒有改變,除非你使用重定向存儲輸出。Sed主要用來自動編輯一個或多個文件;簡化對文件的反復(fù)操作;編寫轉(zhuǎn)換程序等。



今天扣丁學(xué)堂Linux培訓(xùn)給大家來介紹一下關(guān)于最常用的字符串替換用法。

1.sed替換的基本語法

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

單引號里面,s表示替換,三根斜線中間是替換的樣式,特殊字符需要使用反斜線”\”進(jìn)行轉(zhuǎn)義。

2.單引號”‘’”是沒有辦法用反斜線”\”轉(zhuǎn)義的

這時候只要把命令中的單引號改為雙引號就行了,這點(diǎn)和正則表達(dá)式類似,格式如下:

#要處理的字符包含單引號

sed"s/原字符串包含'/替換字符串包含'/"

3.替換分隔符

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

#將分隔符換成問號”?”:

sed's?原字符串?替換字符串?'

4.匹配關(guān)鍵字g

可以在末尾加g替換每一個匹配的關(guān)鍵字,否則只替換每行的第一個,例如:

#替換所有匹配關(guān)鍵字

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到最后一行

sed's/原字符串/替換字符串/2g'#替換2到最后一行

6.批量替換字符串

sed-i"s/查找字段/替換字段/g"`grep查找字段-rl路徑`

sed-i"s/oldstring/newstring/g"`grepoldstring-rlyourdir

7.輸出參數(shù)i

sed處理過的輸出是直接輸出到屏幕上的,使用參數(shù)”i”直接在文件中替換。

#替換文件中的所有匹配項(xiàng)

sed-i's/原字符串/替換字符串/g'filename

8.多條替換命令表示

多個替換可以在同一條命令中執(zhí)行,用分號”;”分隔,其格式為:

#同時執(zhí)行兩個替換規(guī)則

sed's/^/添加的頭部&/g;s/$/&添加的尾部/g'

以上就是關(guān)于Linux基礎(chǔ)教程sed命令字符串替換使用方法詳解,請多多關(guān)注扣丁學(xué)堂,每天會更新高質(zhì)量和原創(chuàng)技術(shù)文章內(nèi)容,扣丁學(xué)堂是專業(yè)的Linux培訓(xùn)班,不僅有專業(yè)的老師和與時俱進(jìn)的課程體系,還有大量的Linux視頻教程供學(xué)員觀看學(xué)習(xí)哦。扣丁學(xué)堂Linux技術(shù)交流群:422345477。

扣丁學(xué)堂微信公眾號



關(guān)注微信公眾號獲取更多的學(xué)習(xí)資料



查看更多關(guān)于“Linux培訓(xùn)資訊”的相關(guān)文章>>

標(biāo)簽: Linux命令 Linux視頻教程 Linux培訓(xùn) Linux在線學(xué)習(xí) Linux在線視頻 Linux基礎(chǔ)教程

熱門專區(qū)

暫無熱門資訊

課程推薦

微信
微博
15311698296

全國免費(fèi)咨詢熱線

郵箱:codingke@1000phone.com

官方群:148715490

北京千鋒互聯(lián)科技有限公司版權(quán)所有   北京市海淀區(qū)寶盛北里西區(qū)28號中關(guān)村智誠科創(chuàng)大廈4層
京ICP備2021002079號-2   Copyright ? 2017 - 2022
返回頂部 返回頂部