- 论坛徽章:
- 1
|
群里朋友发了一道题
[BS] 2015-07-23 12:33:29 imei查询成功- 867125026881315 -查询耗时:293
[BS] 2015-07-23 12:38:50 imei查询成功- 868154028704910 -查询耗时:340
[BS] 2015-07-23 12:38:51 imei查询成功- 868154028704910 -查询耗时:3500
[BS] 2015-07-23 12:38:52 imei查询成功- 868154028704910 -查询耗时:3600
[BS] 2015-07-23 12:38:53 imei查询成功- 868154028704910 -查询耗时:370
[BS] 2015-07-23 12:38:55 imei查询成功- 868154028704910 -查询耗时:310
[BS] 2015-07-23 12:38:56 imei查询成功- 868154028704910 -查询耗时:8400
[BS] 2015-07-23 12:38:57 imei查询成功- 868154028704910 -查询耗时:3800
[BS] 2015-07-23 12:38:58 imei查询成功- 868154028704910 -查询耗时:380
[BS] 2015-07-23 12:38:59 imei查询成功- 868154028704910 -查询耗时:27
以上文本,如果查询耗时(最后一列)小于1000则输出小于1000的数量,如果在1000和5000之间,则输出的在1000和5000之间数量,如果大于5000,则输出5000的数量,如果用awk该如何编写?可以用多次awk
也有人给出了答案如下:
[root@localhost ~]# awk -F ":" '$NF<1000{a++}$NF>1000&&$NF<5000{b++}$NF>5000{c++}END{print a,b,c}' file
6 3 1
但是我把$NF改为$4,如下
[root@localhost ~]# awk -F ":" '$4<1000{a++}$4>1000&&$4<5000{b++}$4>5000{c++}END{print a,b,c}' file
10
结果竟然不同了。
我猜测依照“:”取分隔符,第四列前面均有空格,所以$4不能比较大小,但是为什么$NF却可以比较大小呢? |
|