Linux學習筆記六:sed
阿新 • • 發佈:2019-03-22
替換 命令 pac 選項 文件結尾 取反 保持 啟動 第一個
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