sed初級使用正則表達式
stream editor編輯器
一次只讀一行,只處理一行,不對源文件作處理,至輸出到屏幕上ide
模式空間ip
是一個行編輯器it
格式io
sed[options] "script" FILE....class
選項:stream
-n:靜默模式,不輸出模式空間內的內容;默認打印空間模式的內容擴展
-r:擴展的正則表達式sed
-f 文件:指定sed腳本文件
-e 'script' -e 'script' :指定多個編輯指令
-i : 直接編輯原文件
編輯命令:
d:刪除
p: 打印
i \:在被指定到的行前面插入文本
a \:在被指定的行的下面插入文本
\n:換行
r 文件:在指定位置把另一個文件的內容插入
w 文件:將符合條件的全部行保存至指定文件中
=:顯示符號條件的行的行號
s///:查找條件可使用模式,可是要替換的內容不行
地址定界:自定義的起始行到結束行
startline,endline
1,3
/pat1/,/pat2/
/pattern/
用法:sed [options] 'addr1[,addr2]編輯命令' FILE...
sed [options] "addr1[,addr2]編輯命令" FILE...
正則表達式:
基本的
字符:
.
[]
[^]
次數
*
\?
\{m,n\}
錨定:
^
$
\<,\b
\>,\b
分組:
\(\)
引用:
\1,\2,……
擴展:
字符:
.
[]
[^]
次數
*
?
{m,n}
+
錨定:
^
$
\<,\b
\>,\b
或:
a|b
分組:
\(\)
引用:
\1,\2,……
sed '地址定界s@查找條件@替換文件@'
修飾符:
g:global,全局替換
i:ignore-case,不區分字符大小寫