您现在的位置是:网站首页> 编程资料编程资料
linux awk删除文本重复行需要注意强制类型转换的问题 _LINUX_操作系统_
2023-03-16
909人已围观
简介 linux awk删除文本重复行需要注意强制类型转换的问题 _LINUX_操作系统_
希望删除IP地址前三段相同的多余重复行。测试文本如下:
# cat 1.txt 2.1.10.1 2.1.10.2 2.11.0.1 2.11.0.2
如果数组下标不加引号,在这个特殊的情况下会被强制转换为数字,最终导致统计失败:
# awk 'BEGIN{FS=OFS="."}{if(!a[$1.$2.$3]++)print}' 1.txt 2.1.10.1 # awk -F '.' '{a[$1.$2.$3]++;}END{for(i in a)print i" "a[i]}' 1.txt 2110 4数组下标加上引号之后,一切恢复正常:
# awk 'BEGIN{FS=OFS="."}{if(!a[$1"."$2"."$3]++)print}' 1.txt 2.1.10.1 2.11.0.1 # awk -F '.' '{a[$1"."$2"."$3]++;}END{for(i in a)print i" "a[i]}' 1.txt 2.11.0 2 2.1.10 2 扩展阅读:
http://www.gnu.org/software/gawk/manual/html_node/Variable-Typing.html
相关内容
- Linux怎么使用压缩和解压到指定目录的命令?_LINUX_操作系统_
- linux DRBD编译安装与配置方法_LINUX_操作系统_
- linux下4种kill某个用户所有进程的方法_LINUX_操作系统_
- Centos(linux)系统 ip命令使用方法_LINUX_操作系统_
- 调整Linux系统为正确时区的方法_LINUX_操作系统_
- Linux系统下查看网卡实时流量软件Nload安装使用方法_LINUX_操作系统_
- Linux上的一款EPUB阅读软件_LINUX_操作系统_
- Linux怎么开启tomcat中日志的gc设置?_LINUX_操作系统_
- Linux基金会官网公布最佳Linux发行版名单详解_LINUX_操作系统_
- 微软正在成为Linux基金会白金会员_LINUX_操作系统_
