文本数据处理之AWK 图解(3)

八、awk中使用的数组

1、数组

array[index-expression]

index-expression可以使用任意字符串;需要注意的是,如果某数据组元素事先不存在,那么在引用其时,awk会自动创建此元素并初始化为空串;因此,要判断某数据组中是否存在某元素,需要使用index in array的方式。

1

 

# netstat -ant | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

 

2、要遍历数组中的每一个元素,需要使用如下的特殊结构

for (var in array) { statement1, ... }

其中var用于引用数组下标,而不是元素值

3、删除数组变量

从关系数组中删除数组索引需要使用delete命令。使用格式为

delete array[index]

九、awk的内置函数

1、split(string, array [, fieldsep [, seps ] ])

功能:将string表示的字符串以fieldsep为分隔符进行分隔,并将分隔后的结果保存至array为名的数组中;数组下标为从0开始的序列;

2、length([string])

功能:返回string字符串中字符的个数;

3、substr(string, start [, length])

功能:取string字符串中的子串,从start开始,取length个;start从1开始计数

4、system(command)

功能:执行系统command并将结果返回至awk命令

5、systime()

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/78b81a971967c2d003553b3d41e6bac7.html