sed 行編輯器
pattern space
hold space
處理邏輯:逐行讀取,讀入一行,默認打印一行,進行邏輯處理,再讀入下一行,知道文件結尾。
sed script:'address command' 地址定界+命令
選項:
-n:不打印模式空間行
-e:多點操作
-f: 使用腳本文件
地址定界:
#: 第#行
#,#+3:#~#+3行
/pattern/:模式匹配定界
/pattern/,/pattern/:模式定界
#,/pattern/:組合定界
$: 最後一行
1~2:奇數行
2~2:偶數行
命令:
p:打印
d:刪除
!:取反
a:在下一行追加,有空格要轉義,有變量要放在'''$VAR'''
i:在匹配行上一行插入內容
c:替換
w:寫到文件中
r:讀入文件
=:打印行號
高級用法:
P: 打印模式空間開端至\n內容,並追加到默認輸出之前
h: 把模式空間中的內容覆蓋至保持空間中
H:把模式空間中的內容追加至保持空間中
g: 從保持空間取出數據覆蓋至模式空間
G:從保持空間取出內容追加至模式空間
x: 把模式空間中的內容與保持空間中的內容進行互換
n: 讀取匹配到的行的下一行覆蓋至模式空間
N:讀取匹配到的行的下一行追加至模式空間
d: 刪除模式空間中的行
D:如果模式空間包含換行符,則刪除直到第一個換行符的模式空間中的文本, 並不會讀取新的輸入行,而使用合成的模式空間重新啓動循環。如果模式空間 不包含換行符,則會像發出d命令那樣啓動正常的新循環
Linux學習筆記六:sed
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.