sed,awk簡單使用

2021-06-01 09:28:57 字數 1193 閱讀 9795

sed是一種非互動式的流編輯器,可動態編輯檔案。

sed的工作模式是對比每一資料行,若如何樣式,就執行指定的操作。

語法格式:

sed '樣式命令' 檔案

如果檔案中某一行符合「樣式命令」,就執行指定的sed命令,如刪除(d)、替換(s)、輸出(p).

這裡的「樣式命令」使用一對//括起來,表示尋找。

例如:1、/1,6/,表示1到6行

2、/aaa/,/ddd/,表示從含有字元aaa的行到含有字元ddd的行

example:

1、刪除某一範圍的資料行

sed '1,4d' filepath

2、刪除含有指定「樣式」的行

sed '/styletext/d' filepath

3、刪除空白行

sed '/^$/d' filepath

4、刪除非指定「樣式」的行

sed '/styletext/!d' filepath

5、輸出匹配「樣式」的行

sed -n '/styletext/p' filepath
指令p會把當前的資料顯示出來,但因為sed預設也會顯示不符合的資料行,所以需要配合選項"-n".

-n:抑制顯示不符合的資料行。

6、刪除每一行開頭的3個字元

sed 's/^...//' filepath

7、取得符合樣式的字串

sed -n 's/\(styletext\)/\1string/p' filepath

()用來儲存匹配的字元

\1取得之前匹配的字元

8、找到匹配的資料行,再進行替換指令

sed -n '/aaa/s/123/456/p' filepath
找到含有aaa的行,替換123為456

9、在指定行進行替換指令

sed -n '2,4s/123/456/p' filepath
在第2到4行,將123替換為456

awk待續

sed awk擷取日誌

awk 字串1 a file sed n 字串1 n b2 file awk 字串1 a file sed n 字串1 m x lzj p b x file 擷取兩個字串之間日誌 n 匹配行的下一行 n 追加到下一行 p 列印 p 列印到 n b 無條件跳轉 未匹配後面不執行 t 有條件跳轉 未匹配...

sed awk 例項分享

介紹 做運維的應該經常用sed和awk等這些工具,但要想把他們用得好絕非易事,需要長時間的積累,正文1 如何在shell中獲取字串string的長度 echo 2 替換檔案text中乙個或多個空格 sed i s g test注釋 意思是之前字元的乙個或多個 3 刪除檔案text中 和 兩個字元 s...

sed awk 資料的檢索

在格式化文字中查詢縮寫詞相應的完整詞語,如輸入 basic 返回其全稱 beginner s all purpose symbolic instruction code 下面這個縮寫詞列表可理解為乙個簡單的資料庫 zhanhailiang linux 06bq cat acronyms basic ...