天天看點

linux之sed指令

sed(Stream EDitor)流編輯器:行編輯器

sed基本用法:

stream EDitor :sed 隻是用來操作純asci檔案

操作asci碼行編輯器      全屏編輯器 vi

sed模式空間:記憶體空間=模式空間指定處理那些行,符合條件來比對處理

預設不編輯原檔案,僅對模式空間中的資料做處理,而後,處理結束後,将模式空間列印至螢幕

1.startline,endline  比如1,100 從1到100行

$:最後一行 

2./regEXP/

/^root/

3./pattern1/,/pattern2/

第一次被pattern1比對到的行開始,至第一次被pattern2比對到的行結束,這中間的所有行

4.linenumber 指定的行

5.startline,+N 從startline開始,向後的N行

sed [options]‘addresscommand’ file......

    -n:靜默模式,不再預設顯示模式空間中的内容

     -i:直接修改原檔案

    -e:可以執行多個腳本

    -r:表示使用擴充正規表達式

command: /etc/fstab

d:删除符合條件的行

p:顯示符合條件的行

a \string:在指定的行後面追加新行,内容為string

\n:可以用于換行

i \string:在指定的行前面追加新行,内容為string

r file:将指定的檔案的内容添加至符合條件的行處

w file:将位址指定範圍内的内容另存至指定檔案中

s/pattern/string/:查找并替換

   加修飾符 g:全局替換

   i查找時忽略大小寫

&:引用模式比對整個串

sed 1,30d passwd  

sed -n 30p passwd 

sed -n 30,+3p passwd

sed /root/d passwd 

本文轉自 周小玉 51CTO部落格,原文連結:http://blog.51cto.com/maguangjie/1864177,如需轉載請自行聯系原作者

繼續閱讀