首页IT科技awk命令删除某一列(linux awk删除文本重复行需要注意强制类型转换的问题)

awk命令删除某一列(linux awk删除文本重复行需要注意强制类型转换的问题)

时间2025-05-05 01:17:11分类IT科技浏览3691
导读:希望删除IP地址前三段相同的多余重复行。测试文本如下:...

希望删除IP地址前三段相同的多余重复行           。测试文本如下:

如果数组下标不加引号           ,在这个特殊的情况下会被强制转换为数字                 ,最终导致统计失败:

# 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

声明:本站所有文章           ,如无特殊说明或标注                 ,均为本站原创发布                 。任何个人或组织      ,在未征得本站同意时     ,禁止复制           、盗用                 、采集      、发布本站内容到任何网站           、书籍等各类媒体平台      。如若本站内容侵犯了原著者的合法权益                 ,可联系我们进行处理           。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
苹果手机网络代理是什么(苹果系统专用网络优化工具,让你的网络速度暴增) linux系统怎么安装软件包(linux系统中如何安装程序、软件的几种方法)