sed上古神兵

sed [options] '匹配條件&操作指令;匹配條件&操作指令;' file
options:

選項 功能
-n ,--silent 因為sed命令默認會向屏幕輸出,設(shè)置此選項后阻止輸出
-r 支持擴展正則,sed默認是不支持?jǐn)U展正則的
-i [suffix] 直接修改源文件,如果設(shè)置了后綴名,sed將將數(shù)據(jù)備份;sed默認是只修改緩沖區(qū)的,并打印到屏幕上
-e 指定需要執(zhí)行的sed命令,支持使用多個-e參數(shù)
-f 指定需要執(zhí)行的腳本文件,需要提前將sed命令寫入文件中

基本操作指令

指令 功能
p 打印當(dāng)前匹配條件匹配的行
l 打印當(dāng)前匹配條件匹配的行(顯示控制字符)
= 打印行號
a text 在匹配的行后添加字符串text,text是獨占一行
i text 在匹配的行前添加字符串text,text是獨占一行
d 刪除匹配的行
c text 將匹配的行的整行替換為text
r filename 從filename中讀取內(nèi)容添加到匹配的行后面
w filename 將匹配的行的內(nèi)容寫到文件filename中
q [exit code] 立刻退出sed腳本
s/regexp/replace/ 使用正則匹配,替換匹配到的數(shù)據(jù),不是整行哦;regexp是正則表達式,replace是用來替換的字符串
s/regexp/replace/g 加個g,如果一行數(shù)據(jù)中有多個regexp,都替換成replace
s/regexp/replace/number 加個n,如果一行數(shù)據(jù)中有多個regexp,僅僅替換第n個

數(shù)據(jù)定位方案

格式 功能
數(shù)字 1就是第一行; 1,3就是第一行到第三行;
數(shù)字1~數(shù)字2 數(shù)字1是起始行號,數(shù)字2是步長,例如1~3 等于匹配1,4,7,……
數(shù)字1,+N 從數(shù)組1開始及其后面N行,例 1,+3
$ 匹配最后一行
/regexp/ 正則表達式
\cregexpc 使用正則表達式匹配,c可以是任意字符,\xAAx將匹配AA
反操作
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容