概述
gawk (gnu awk)
linux下查找替換文本工具
語法:
awk <options> 'Program' Input-File1 Input-File2 ...
awk -f PROGRAM-FILE <options> Input-File1 Input-File2 ...
關鍵字:
-f PROGRAM-FILE
--file PROGRAM-FILE
從檔案PROGRAM-FILE中讀取awk規則源檔案內容,代替第一個命令行參數。
基本功能:
按行(或者其他文本單元)搜尋檔案內容,包含一個匹配模式。當有文本行匹配,awk在此行進行特別的操作。Program告訴awk該去做什麼;
gawk將會忽略下面這些關鍵字後面的換行
, { ? : || && do else
例子
(1)下面的程式列印出data文本最長行的長度
awk '{ if (length($0) > max) max = length($0) }
END { print max }' data
(2)下面的程式列印出至少有一個文字的行,這是個很好刪除檔案中空行的方法
awk 'NF > 0' data
(3)下面的程式列印出7個0到100的隨機數。
awk 'BEGIN { for (i = 1; i <= 7; i++)
print int(101 * rand()) }'