• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • bios
  • 系统安装
  • 系统进程
  • Windows
  • LINUX
  • RedHat/Centos
  • Ubuntu/Debian
  • Fedora
  • Solaris
  • 麒麟系统
  • 红旗Linux
  • 苹果MAC
  • 注册表
  • 其它系统
您的位置:首页 > 操作系统 >LINUX > linux awk删除文本重复行需要注意强制类型转换的问题

linux awk删除文本重复行需要注意强制类型转换的问题

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-05-12

佚名 通过本文向大家介绍了强制类型转换,java强制类型转换,c语言强制类型转换,强制转换数据类型,c#强制类型转换等相关知识,希望对您有所帮助,也希望大家多多支持linkedu.com

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

# cat 1.txt
2.1.10.1
2.1.10.2
2.11.0.1
2.11.0.2
</div>

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

# 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
</div>

数组下标加上引号之后,一切恢复正常:

# 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
</div>

扩展阅读:

http://www.gnu.org/software/gawk/manual/html_node/Variable-Typing.html

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 关于类型转换的
  • 类型转换错误,不知道是怎么错的
  • CComVariant类型转换的问题
  • LPCTSTRlpName=vNamebstrVal?类型转换
  • 类型转换问题
  • 关于类型转换的问题?
  • 一个类型转换的问题?
  • 讨论关于c++中强制类型转换原理,请各位高手多多提供意见啊
  • 如何把delphi中的real类型转换成float类型?
  • constint和intconst的类型转换

相关文章

  • 2017-05-12linux 账户管理命令 useradd、groupadd使用方法
  • 2017-05-12Linux阵列 RAID详解
  • 2017-05-12Linux下的命令行浏览器links介绍
  • 2017-05-12详解Linux系统中管理文件权限的chown和chmod命令
  • 2017-05-12Linux Shell 常用命令与目录分区的学习总结
  • 2017-05-12Linux下Wireshark的网络抓包使用方法
  • 2017-05-12在Linux上使用Wine安装轻聊版的QQ的步骤讲解
  • 2017-05-12Linux shell 比较运算符详解
  • 2017-05-12linux的Sudo/su授权命令详解
  • 2017-05-12Linux系统swap和zram swap的使用详解

文章分类

  • bios
  • 系统安装
  • 系统进程
  • Windows
  • LINUX
  • RedHat/Centos
  • Ubuntu/Debian
  • Fedora
  • Solaris
  • 麒麟系统
  • 红旗Linux
  • 苹果MAC
  • 注册表
  • 其它系统

最近更新的内容

    • Linux系统一些重要的学习方法及路线图详解
    • 使用awk输出文本中的字段和列的方法
    • 在Linux中安装配置Postfix来搭建邮件发送服务
    • Linux系统SSH免密码登陆远程服务器的技巧
    • 详解Linux中的cat文本输出命令用法
    • Linux系统中查看执行中的进程占用内存量的方法
    • Linux date日期格式及加减运算
    • Linux下的命令行浏览器links介绍
    • 深入解析Linux系统下的进程切换
    • Linux如何过滤空文件?Linux过滤空文件的命令总结

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有