簡介:正則表達式
sed是一種流編輯器,它是文本處理中很是重要的工具,可以完美的配合正則表達式使用,功能與衆不同。處理時,把當前處理的行存儲在臨時緩衝區中,稱爲「模式空間」(pattern space),接着用sed命令處理緩衝區中的內容,處理完成後,把緩衝區的內容送往屏幕。接着處理下一行,這樣不斷重複,直到文件末尾。文件內容並無 改變,除非你使用重定向存儲輸出或者使用直接編輯文件選項-i。sed主要用來自動編輯一個或多個文件;簡化對文件的反覆操做;編寫轉換程序等。編輯器
sed 命令格式爲:工具
sed [options] 'command' file(s)spa
sed [options] -f scriptfile file(s)3d
sed 經常使用命令:ip
1.替換操做:s命令字符串
替換文本中的字符串:input
sed 's/abc/ABC/' file_input #若想要進行全局替換:sed's/abc/ABC/g' file_inputio
2.刪除插入操做:di命令test
sed '/^test/' d file #刪除文件中全部以test開頭的行
sed '2,$d' file #刪除文件從第二行到末尾的全部行
sed '/^$/d' file #刪除文件中全部的空白行
3.標記以匹配字符串:&
sed 's/^abc/&def' file #全部以abc開頭的行都會被替換成它本身加def
4.多點編輯:e命令
sed -e '1,3d' -e 's/abc/def/' file #-e選項容許在同一行裏執行多條命令
5.寫入文件:w命令
sed -n '/abc/w file1' file2 #在file2中,全部包含abc的行都被寫入file1
6.打印奇數行偶數行
example1:sed -n 'p;n' file #打印奇數行
sed -n 'n;p' file #打印偶數行
example2:sed '1~2p' file #打印奇數行
sed '2~2p' file #打印偶數行