gawk程序是Unix中原始awk程序的GNU版本。gawk程序讓流編輯器邁上了一個新的臺階,它提供了一種編程語言而不只是編輯器命令。在gawk編程語言中,可以完成下面的事情:
(1)定義變量來保存數(shù)據(jù);
(2)使用算數(shù)和字符串操作符來處理數(shù)據(jù);
(3)使用結(jié)構(gòu)化編程概念(比如if-then語句和循環(huán))來為數(shù)據(jù)處理增加處理邏輯;
(4)通過提取數(shù)據(jù)文件中的數(shù)據(jù)元素,將其重新排列或格式化,生成格式化報表;
gawk程序的報告生成能力通常用來從大文本文件中提取數(shù)據(jù)元素,并將它們格式化成可讀的報告。其中完美的例子是格式化日志文件。在日志文件中找出錯誤行會很難,gawk程序可以讓你從日志文件中過濾出需要的數(shù)據(jù)元素,然后你可以將其格式化,使得重要的數(shù)據(jù)易于閱讀。

1 gawk命令格式

gawk option program file
    選項:     描述
    -F fs           指定行中劃分數(shù)據(jù)字段的字段分隔符
    -f file         從指定的文件中讀取程序
    -v var=value        定義gawk程序中的一個變量及其默認值
    -mf N           指定要處理的數(shù)據(jù)文件中的最大字段數(shù)
    -mr N           指定數(shù)據(jù)文件中的最大數(shù)據(jù)行數(shù)
    -W  keyword     指定gawk的兼容模式或警告等級

命令行選項提供了一個簡單的途徑來定制gawk程序中的功能。
gawk的強大之處在于程序腳本,可以寫腳本來讀取文本行的數(shù)據(jù),然后處理并顯示數(shù)據(jù),創(chuàng)建任何類型的輸出報告。

2 從命令行讀取程序腳本

網(wǎng)友評論