Linux三劍客之sed命令

一.sed命令概述

Stream EDitor ,行編輯器

sed是一種流編輯器,它一次處理一行內容.處理時,把當前處理的行存儲在臨時緩沖區中,稱為”模式空間”(pattern space),接著用sed命令處理緩沖區中的內容,處理完成后,把緩沖區的內容送往屏幕.接著處理下一行,這樣不斷重復,直到文件末尾.文件內容并沒有改變除非你使用重定向存儲輸出.sed主要用來自動編輯一個或多個文件,簡化對文件的反復操作,編寫轉換程序等

二.sed工具的用法:

sed [option]… ‘script’ inputfile…

 

常用選項:

-n 不輸出模式空間內容到屏幕,即不自動打印

-e 多點編輯

-f /PATH/SCRIPT_FILE 從指定文件中讀取編輯腳本

-r 支持使用擴展正則表達式

-i 原處編輯(慎用)

                                              blob.png

blob.png

script:

地址命令’

地址定界:

1) 不給地址:對全文進行處理

2) 單地址:#:指定的行

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

blob.png

3) 地址范圍

#,#

#,+#

blob.png

/pat1/,/pat2/

 

#,/pat1/

4)~:步進

1~2奇數行

2~2偶數行

blob.png

 

 

編輯命令:

d:刪除模式空間匹配到的行

blob.png

blob.png

 

 

p:顯示模式空間中的內容

blob.png

blob.png

a \text :在行后面追加文本;支持使用\n實現多行追加

blob.png

I \text :在行前面插入文本;支持使用\n實現多行插入

blob.png

c \text :替換行為單行或多行的文本

blob.png

w /path/somefile :保存模式匹配的行至指定文件

blob.png

 

r /path/somefile :讀取指定文件的文本至模式空間中匹配到的行后

blob.png

=:為模式空間中的行打印行號

blob.png

!:模式空間中匹配行取反處理

blob.png

 

sed工具

s///:查找替換,支持使用其他分隔符,s@@@,s###

s/string1/string2

blob.png

替換標記:

g:行內全局替換

blob.png

p:顯示替換成功的行

blob.png

w /PATH/TO/SOMEFILE: 將替換成功的行保存至文件中

blob.png

三.sed 高級編輯工具

h:把模式空間中的內容覆蓋至保持空間中

 

H:把模式空間中的內容追加至保持空間中

g:從保持空間取出數據覆蓋至模式空間

                                              blob.png

G:從保持空間取出內容追加至模式空間

blob.png

blob.png

x:把模式空間中的內容與保持空間中的內容進行互換

n:讀取匹配到的行的下一行覆蓋至模式空間

blob.png

blob.png

N:讀取匹配到的行的下一行追加至模式空間

blob.png

d:刪除模式空間中的行

blob.png

D:刪除當前模式空間開端至\你的內容(不再傳至標準輸出),放棄之后的命令,但是對剩余模式空間重新執行sed

 

 

原創文章,作者:Kartik,如若轉載,請注明出處:http://www.www58058.com/33612

(0)
KartikKartik
上一篇 2016-08-15 09:26
下一篇 2016-08-15 10:26

相關推薦

  • 馬哥教育網絡班21期+第二周課程練習

    Linux上的文件管理類命令都有哪些?其常用的方法及其相關示例。     cp:將源文件或者目錄復制到目標文件或者目錄中。     mv:將文件或目錄重新命名,或者將源文件從源目錄移到目標目錄中。     rm:刪除指定的一個文件或者多個文件或者目錄。       &n…

    Linux干貨 2016-07-16
  • 1021作業

    關于用戶和組相關配置文件的總結 /etc/passwd:用戶及相關屬性信息 在Linux /etc/passwd文件中每個用戶都有一個對應的記錄行,它記錄了這個用戶的一些基本屬性。系統管理員經常會接觸到這個文件的修改以完成對用戶的管理工作。這個文件對所有用戶都是可讀的。但是Linux /etc/passwd文件中都有些什么內容呢? #cat/etc/pass…

    Linux干貨 2016-10-24
  • ACL

    acl 權限的理解

    Linux干貨 2018-03-19
  • 源碼編譯安裝dropbear

    tar -jxf dropbear-2013.58.tar.bz2 cd dropbear-2013.58 ./configure make PROGRAMS=”dropbear dbclient dropbearkey dropbearconvert scp” make PROGRAMS=”dropbear dbclie…

    Linux干貨 2017-10-21
  • Linux文件權限及ACL

    文件權限 文件或目錄可存取的身份分為3類,owner/group/others (所屬者/所屬組/其他人) ,所以訪問一個文件或目錄的權限分為三種, 所有者權限,所屬組權限,其他人權限 (通過ll text.log查看)。 在linux系統中常用的權限分為3種 r(read) w(write) x(excute)。 對文件或目錄的權限進行修改時,要用到chm…

    Linux干貨 2017-06-01
  • Linux命令學習

    閱讀目錄 Linux cat命令 file命令 dd命令 hexdump命令 cat命令   cat三大功能:      1.一次顯示整個文件:cat filename      2.從鍵盤創建一個文件:cat > filename 注意只能創建新文件,…

    Linux干貨 2017-07-16
欧美性久久久久