shell不排序去重
来源:互联网 发布:阿里云rds登录不上 编辑:程序博客网 时间:2024/06/10 09:09
一条命令搞定:
awk '!a[$0]++' file
如果是第一次出现a[$0]++的值为0(假),而!a[$0]++的值就为1(真),之后就执行print $0
第二次或者两次以上的出现a[$0]++的值就为大于0的整数值(真),例如1,2,3...,而!a[$0]++的值就为0(假),之后就不执行print $0操作
awk '!($0 in a){a[$0];print $0}'
pattern为!($0 in a),Action为{a[$0];print $0}
分析:
1.执行第一行时的a的数组为空,($0 in a)为假,!($0 in a)为真。执行Action,a[$0]就存在了a[row1],打印第一行
2.执行第二行时的a的数组为a[row1],如果a[row2] 是a[$0]中的元素,!($0 in a)为真为假,不执行Ation。如果a[row2]不是a[$0]中的元素,执行Action,a[$0]中增加元素(a[row1],a[row2]),打印第二行。
3.重复执行类似的第二步骤。达到的去重的效果。
0 0
- shell不排序去重
- shell脚本不排序去重
- shell 排序 去重
- shell sort 排序 二次排序 去重
- shell去重
- 数组排序去重
- list去重排序
- 整数去重排序
- DataTable排序,去重
- List排序去重
- 去重与排序
- 去重排序
- STL 去重排序
- 随机数去重排序
- 排序去重
- 随机数去重排序
- iOS去重 排序
- List去重排序
- 无需编程,DIY自己智能小车的Android蓝牙遥控软件(二)
- 100万并发连接服务器笔记之准备篇
- 律师事务所网站解决方案、律师事务所网络推广策划书、律师事务所网站解决方案、律师事务所网络营销
- 第一个OpenGL程序
- Android UI控件详解-AutoComplete-TextView(自动提示)
- shell不排序去重
- 笔记11-对话框
- [ACM] hdu 1864 最大报销额(01背包或贪心)
- Sqlite删除列方法
- 无需编程,DIY自己智能小车的Android蓝牙遥控软件(三)
- Spring容器
- 100万并发连接服务器笔记之处理端口数量受限问题
- CentOS常用命令小结
- 结合内核实现源码分析 select poll epoll区别