歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> awk的常用標量變量和數值運算符

awk的常用標量變量和數值運算符

日期:2017/2/28 13:43:36   编辑:Linux教程

awk是Unix系統中的重要的支持正則表達式模式的處理文本處理工具,它即不像sed是基於一行行的處理文本數據,也不像grep一樣只是匹配某一個字符串所在的行的數據,它處理文本數據是可以抓取到相應的字段的,要實現如此復雜的功能awk就有大量的內建函數、命令、變量、數組等等。awk還支持自定義變量,awk的內建變量一般用大寫,而我們自定義的變量中一般全局變量第一個字母大寫,局部變量全部小寫,這個是我們一般的使用習慣。當然在Unix系統中awk還有衍生出其他相應的免費版本,如果你的系統是遵從FHS標准的話,默認的有如下:

[root@localhost bin]# ls /bin/|egrep '\.*awk$|^awk\.*'
awk
gawk
igawk
pgawk

其他版本的awk在這裡就不做過多的贅述了,先說一下awk的常用內建標量變量:

變量說明 FILENAME 當前輸入文件的名字 FNR 當前文件的記錄數(record,即rows行) FS 字段分隔字符(默認為空格) NF 當前記錄的字段數(field的總和,即$0裡的所有字段數) NR 當前處理的字段的記錄數(如果是處理所有數據等效於FNR) OFS 輸出字段分隔字符(默認為空格) ORS 輸出記錄分隔字符(默認為“\n”,即換行) RS 輸入記錄分隔字符 SUBSEP 數組下標分隔字符

數值運算符(優先級從大到小):

運算符說明 ++ -- 增加與減少(前置或後置) ^ ** 指數 ! + - 非、加(一元條件表達式中)、減(一元條件表達式中) * / % 乘、除、余 + - 加、減 < <= == => != > 比較 && 邏輯與(and) || 邏輯或(or) ? : 三元條件式 = += -= *= /= %= ^= **= 賦值

當然還有正則運算符,當然在平時我們可能還會使用的到awk的內建函數來處理數據,另外awk下還有BEGING、END、PATTERN這3種語句塊,在這裡就不做過多的說明了,需要可以查看man幫助文檔,總之awk是在Unix系統中相當重要的文本處理工具,如果熟悉掌握它可以讓你在平時處理數據時事半功倍。

Linux常用命令之awk http://www.linuxidc.com/Linux/2016-09/135046.htm

Linux系統之文本格式化工具awk http://www.linuxidc.com/Linux/2016-02/128150.htm

AWK簡介及使用實例 http://www.linuxidc.com/Linux/2013-12/93519.htm

Linux awk文本分析工具 http://www.linuxidc.com/Linux/2015-12/126217.htm

Linux文本處理工具之awk http://www.linuxidc.com/Linux/2015-01/111437.htm

如何在Linux中使用awk命令 http://www.linuxidc.com/Linux/2014-10/107542.htm

文本分析工具-awk http://www.linuxidc.com/Linux/2014-12/110939.htm

AWK入門基礎教程 http://www.linuxidc.com/Linux/2016-12/138138.htm

使用awk格式化輸出文本 http://www.linuxidc.com/Linux/2016-04/130193.htm

Copyright © Linux教程網 All Rights Reserved