sed應用要點

2021-04-21 14:40:56 字數 1501 閱讀 5530

sed使用方式

$sed -f myscript.sed input_file

$sed 'some-sed-commands' input-file > myoutfile

基本sed編輯命令

p        列印匹配行

=        顯示檔案行號

a/       在定位行號後附加新文字資訊

i/       在定位行號前插入新文字資訊

d        刪除定位行

c/       用新文字替換定位文字行

s        使用替換模式替換相應模式

r        從另乙個檔案中讀文字

w        寫文字到乙個檔案

q        第乙個模式匹配完成後推出或立即推出

l        顯示與八進位制ascii**等價的控制字元

在定位行執行的命令組

g        將模式2貼上到/pattern n/

y        傳送字元

n        延續到下一輸入行;允許跨行的模式匹配語句

基本sed程式設計舉例

$sed -n '2p'  example.txt           列印檔案的第二行

$sed -n '1,3p' example.txt          列印第一到第三行

$sed -n '/exam/'p example.txt       列印匹配exam的行

$sed -n '4,/the/'p example.txt      只在第四行查詢模式the

$sed -n '//$/'p   example.txt       列印有$的行

$sed -n '1,$'p  example.txt         列印全部

$sed -n -e /pattern/p -e /pattern/= 列印行號及匹配行

$sed '$d' example.txt                刪除最後一行

$sed '/eaxm/d'  example.txt          刪除有eaxm的行

$sed 's/he/he/' example.txt          替換he為he

$sed 's/the/wow!/g' example.txt      替換全文中的the為wow!

$sed 's/he/ & pass/g' example.txt    在he後增加pass

快速一行命令

's//.$//g'                            刪除結尾行的句點

'-e /abcd/d'                          刪除包含abcd的行

's/^[ ][ ]*//g'                       刪除行首空格

'/^$/ d'                              刪除空行

's/^g'                            從路徑中刪除第乙個/

sed應用舉例

1,sed 3d test.txt 把test.txt中的第三行刪除 2,sed 3a hello world test.txt 在test.txt的第三行後面新增 hello world 這一行 3,sed 3i hello world test.txt 在test.txt的第三行前面面新增 he...

sed命令應用

一 簡介 sed是stream edit。二 用法 d delete i 操作文件 sed i 1d demo.txt 刪除第一行 sed i d demo.txt 刪除最後一行 sed i 1,d demo.txt 刪除所有行 p print sed n 1p demo.txt 顯示第一行 sed...

sed的高階應用

一 sed簡介 sed是面向流的行編輯器,所謂面向流,是指接受標準輸入的輸入,輸出內容到標準輸出上。sed和早期的ed有關,其實在sed中的很多命令,都有ed的影子。二 sed基本用法 sed可以支援基本正規表示式,sed的執行 sed n e command file s sed n f scri...