awk-05-数组
数组
数组:
存储一系列相同类型的元素,键/值方式存储,通过下标(键)来访问值
awk 中数组称为关联数组,不仅可以使用数字作为下标,还可以使用字符串作为下标
数组元素的键和值存储在 awk 程序内部的一个表中,该表采用散列算法,因此数组元素是随机排序
数组格式:
array[index]=value
示例
1.自定义数组
2.通过NR设置记录下标,下标从1开始
3.通过 for 循环遍历数组
i是数组的下标
第一种for循环的结果是乱序的,数组是无序存储的
第二种for循环是通过下标获取的,排序正常
因此,当下标是数组序列时,还是用 for( expr1;expr2;expr3 )循环表达式比较好,保持顺序不变
4.通过++方式作为下标
x被 awk 初始化值是0
5.使用字段作为下标
6.统计相同字段出现次数
实现去重的话,只打印下标即可
7.统计TCP连接状态
8.只打印出现次数大于2的
9.去重和不打印重复行
当值是 0 是为假, 非 0 整数为真
只打印重复的行说明:当处理第一条记录时, 执行了++, 初始值是 0 为假,就不打印,如果再遇到相同的记录,值就会+1,不为 0, 则打印
不打印重复的行说明: 当处理第一条记录时,执行了++, 初始值是 0 为假,感叹号取反为真,打印,如果再遇到相同的记录, 值就会+1,不为 0 为真,取反为假就不打印
10.统计每个相同字段的 某字段总数
转载请注明出处哟~
https://www.cnblogs.com/lichengguo