sed命令_linux sed 命令用法詳解:功能強大的流式文字編輯器
sed是一種流編輯器,它是文字處理中非常中的工具,能夠完美的配合正規表示式使用,功能不同凡響。處理時,把當前處理的行儲存在臨時緩衝區中,稱為「模式空間」(pattern space),接著用sed命令處理緩衝區中的內容,處理完成後,把緩衝區的內容送往螢幕。接著處理下一行,這樣不斷重複,直到檔案末尾。檔案內容並沒有 改變,除非你使用重定向儲存輸出。sed主要用來自動編輯乙個或多個檔案;簡化對檔案的反覆操作;編寫轉換程式等。
sed的選項、命令、替換標記
命令格式
sed [options] 『command』 file(s)
sed [options] -f scriptfile file(s)
選項 -e
sed替換標記
g 表示行內全面替換。
p 表示列印行。
w 表示把行寫入乙個檔案。
x 表示互換模板塊中的文字和緩衝區中的文字。
y 表示把乙個字元翻譯為另外的字元(但是不用於正規表示式)
\1 子串匹配標記
& 已匹配字串標記
sed元字符集
^ 匹配行開始,如:/^sed/匹配所有以sed開頭的行。 匹配
行結束,
如:/s
ed匹 配行
結束,如
:/se
d/匹配所有以sed結尾的行。
. 匹配乙個非換行符的任意字元,如:/s.d/匹配s後接乙個任意字元,最後是d。
* 匹配0個或多個字元,如:/*sed/匹配所有模板是乙個或多個空格後緊跟sed的行。
匹配乙個指定範圍內的字元,如/[ss]ed/匹配sed和sed。
[^] 匹配乙個不在指定範圍內的字元,如:/[^a-rt-z]ed/匹配不包含a-r和t-z的乙個字母開頭,緊跟ed的行。
(..) 匹配子串,儲存匹配的字元,如s/(love)able/\1rs,loveable被替換成lovers。
& 儲存搜尋字元用來替換其他字元,如s/love/&/,love這成love。
\< 匹配單詞的開始,如:/\
sed常用例項
把檔案中還有 today 字串的資料行中的 tom 字串替換成 john sed e today s tom john g input.dat把檔案中第三行 的資料替換成句子 young is better sed e 5c young is better input.dat把檔案中第3至10行的資...
常用sed命令
1 sed如何在檔案的最後 插入一行文字 sed i a 要插入的文字 file.txt 使用 i 選項直接修改檔案。匹配檔案的最後一行位置 2 在檔案的某一行插入 nl etc sed 2,4a abcde 在原始檔的第2行到第4行之後均插入行abcde nl etc sed 2a abcde n...
sed 常用的命令
n 讀取一行,執行n,把當前行列印到標準輸出,再讀取一行,覆蓋當前行,然後對模式空間執行一組模式 行為。n 讀取一行,執行n,再讀取一行,現在模式空間有兩行內容,執行一組模式 行為。如下 root localhost sed n p num.txt num1 num2 num2 num3 num4 ...