国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

Linux中使用sed命令替換字符串小結

2020-07-10 11:44:21
字體:
來源:轉載
供稿:網友

最近寫了幾個小腳本用到了sed命令,學了一下,順便記下

sed替換的基本語法為:

復制代碼
代碼如下:
sed 's/原字符串/替換字符串/'

單引號里面,s表示替換,三根斜線中間是替換的樣式,特殊字符需要使用反斜線”/”進行轉義,但是單引號”‘”是沒有辦法用反斜線”/”轉義的,這時候只要把命令中的單引號改為雙引號就行了,例如:

復制代碼
代碼如下:
sed "s/原字符串包含'/替換字符串包含'/" //要處理的字符包含單引號

命令中的三根斜線分隔符可以換成別的符號,這在要替換的內容有較多斜線是較為方便,只需要緊跟s定義即可,例如換成問號”?”:

復制代碼
代碼如下:
sed 's?原字符串?替換字符串?' //自定義分隔符為問號

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

復制代碼
代碼如下:
sed 's/原字符串/替換字符串/' //替換所有匹配關鍵字

上箭頭”^”表示行首,美元”$”符號如果在引號中表示行尾,但是在引號外卻表示末行(最后一行),這里犯二了,搜了半天哪個符號表示首行,半天才想起來,首行就是數字”1″啊.那么在行首和行尾添加字符串就是把行尾和行首替換,例如:

復制代碼
代碼如下:
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/^/添加的頭部&/g;s/$/&添加的尾部/g' //同時執行兩個替換規則

sed處理過的輸出是直接輸出到屏幕上的,要保存可以將輸出重定向,或者使用參數”i”直接在文件中替換:

復制代碼
代碼如下:
sed -i 's/原字符串/替換字符串/g' filename //替換文件中的所有匹配項

寫完晚上12點半了,困得不行,要是中間語言不連貫了出錯了請見諒,歡迎指出.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 桐柏县| 石林| 吉木萨尔县| 西安市| 肥西县| 黔东| 宜丰县| 永吉县| 贵定县| 北票市| 建瓯市| 华容县| 芮城县| 新郑市| 金寨县| 永兴县| 阳信县| 长葛市| 开原市| 堆龙德庆县| 二连浩特市| 抚州市| 潜山县| 石家庄市| 沧源| 辉县市| 措勤县| 孝感市| 延吉市| 泊头市| 建德市| 东乡族自治县| 昂仁县| 西安市| 溧阳市| 徐水县| 荆门市| 施甸县| 灵丘县| 康保县| 象山县|