1. 程式人生 > >sed 使用方式及引數

sed 使用方式及引數

sed 流編輯器
也叫行編輯器
將所需要得行拿到模式空間編輯,而後處理結束後,將模式空間輸出到螢幕
sed【 options】 ‘address command’ file …
options : -n 表示不顯示模式空間得內容
-i 直接替換原檔案
-e SCRIPT -e SCRIPT : 可以同時執行多個指令碼
-f /PATH/TO/SED_SCRITP 用多個指令碼修改

sed 地址 引數 檔案

地址
1.
startLine ,EndLine

    比如1,100

例句 sed ‘1,2d’指定檔案
$ 最後一行 $-1 倒數第一行
1.
/RegExp/ 正則表示式
2.
/pattern1/, /pattern2 第一次pattrn1匹配到得行開始,到第一次pattrm2被匹配到結束
3.
LineNumber 精確指定得行
4.
StarLine,+n 從指定行開始向後N行

Command

	* 

d 刪除符合條件得行
*
例句: sed “1,2d” /etc/fstab

	* 

p 顯示符合條件得行
*
a \string : 再符合條件得行,追加新得新行,
*
i \ string: 在符合條件得行新增新得行。內容為string
*
r FILE 將指定檔案內容新增符合條件得行後
*
w FILE 將地址指定範圍內得行 另存到指定得檔案中
*
s 查詢並替換 /pattern/string/修飾符 格式s/// pattern 支援 正則表示式

預設指定第一行匹配到的字串
所有的替換加修飾符
格式:
g 全域性替換
i 忽略大小寫
除了可以使用///格式還可以使用以下格式
s ###

[email protected]@@ 可使用3個相同的分隔符
例句
sed ‘[email protected]/@#@g’ /etc/passwd
s代表替換。查詢到/替換為# g全域性替換
&:模式匹配到的所有字元 列如 sed 's#(l…e)#\1r#g