sed基礎用法

2021-08-11 15:36:25 字數 1611 閱讀 6378

用法 : sed [option] … 『位址命令』 檔案

常用選項

-n :不列印模式空間的內容到螢幕上(預設是列印的)

-e :多點編輯 (sed [optin] -e 」 -e 」)

-f :/ path/script_file : 從指定檔案中讀取編輯指令碼

-r :支援使用擴充套件正規表示式

-i.bak : 備份檔案並原處編輯

位址範圍:

不給位址 :對全文進行處理

單位址 :# :指定的行,$:最後一行

/pattern/:被此處模式所能夠匹配到的每一行

位址範圍 :

#, # :1,3 從第一行到3行

#,+# :3,+5 從第3行到8行。

/pat1/,/pat2/ :符號這兩個正則表達的行

#,/pat1/ :第#行符號這個正規表示式的內容

~ :步進 (去文字的奇偶行)

1~2 :奇數行 :從第1行開始,每次加2行 1,3,5…..

2~2 :偶數行 :從第2行開始,每次加2行 2,4,5…..

編輯命令

示列

sed 『2p』 /etc/passwd 第2行列印兩邊

sed -n 『2p』 /etc/passwd 只列印第2行

sed -n 『1,4p』 /etc/passwd 列印1到4行

sed -n 『/root/p』 /etc/passwd 顯示文字中匹配到的root的行

sed -n 『2,/etc/passed/p』 從第二行開始匹配

sed -n 『/^$/=』 file 顯示匹配的空白行的行號

sed -n -e 『/^$/p』 -e 『/^$/=』 file 列印出空白行和顯示出空白行行號

sed 『/root/i\superman』 /etc/passwd 在/etc/passwd 行前新增一行 文字

sed 『/root/a\asdf』 /etc/passwd 在匹配行的後新增一行文字

sed 『/root/c\abc』 /etc/passwd 將匹配的行替換成abc

sed 『/^&/d』 file 刪除空白行

sed 『1,10d』 file 刪除第一行到第10行

nl /etc/passwd | sed 『2,5d』 刪除2到5行

nl /etc/passwd | sed 『2a abc』 在匹配到行後面新增一行為abc

sed -n 『s/root/&abc/p』 /etc/passwd 在root單詞後面追加abc 然後 輸出

sed -n 『s/root/abc&/p』 /tc/passwd 在root單詞前面追加abc

sed 『s/test/mytest/g』 file 將匹配的文字全行替換

sed -e 『s/dog/cat/』 -e 『s/hi/lo/』 pets

sed -i.bak 『s/dog/cat/g』 pets 將dog全行替換成cat ,然後備份原文 件字尾.bak,把模式空間的內容寫入原檔案。

高階編輯命令

Linux基礎學習之 sed 命令用法

sed option script inputfile 1 常用選項 n 不輸出模式空間內容到螢幕,即不自動列印 e 多點編輯 f path script file 從指定檔案中讀取編輯指令碼 r 支援使用擴充套件正規表示式 i.bak 備份檔案並原處編輯 p 列印 位址命令 預設則對整個問價進行修...

sed 用法總結

sed n 1,3 p filename 列印1 3 行sed n if fi p filename 列印字元if和 fi之間的內容 sed e 1996 d filename 刪除除了含有 1996 的所有行 sed e y abc abc filename 把小寫的 abc轉換成大寫的 abc ...

sed 語法 用法

sed command filename s 只顯示結果而不修改檔案。1 sed 2,5d file 顯示檔案file,除去2 5行,但行數超過檔案實際行數時不會報錯。sed 10 1 4 d file 顯示檔案file,除去包含101 104的行。sed 2,d file 顯示檔案,只顯示第一行。...