linux中如何使用awk命令删除文本重复行,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
测试文本如下:
# cat 1.txt2.1.10.12.1.10.22.11.0.12.11.0.2
如果数组下标不加引号,在这个特殊的情况下会被强制转换为数字,最终导致统计失败:
# awk 'BEGIN{FS=OFS="."}{if(!a[$1.$2.$3]++)print}' 1.txt2.1.10.1# awk -F '.' '{a[$1.$2.$3]++;}END{for(i in a)print i" "a[i]}' 1.txt2110 4
数组下标加上引号之后,一切恢复正常:
# awk 'BEGIN{FS=OFS="."}{if(!a[$1"."$2"."$3]++)print}' 1.txt2.1.10.12.11.0.1# awk -F '.' '{a[$1"."$2"."$3]++;}END{for(i in a)print i" "a[i]}' 1.txt2.11.0 22.1.10 2
看完上述内容,你们掌握linux中如何使用awk命令删除文本重复行的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网行业资讯频道,感谢各位的阅读!