Shell脚本去重的几种方法实例
更新时间:2015年07月10日 10:53:39 投稿:junjie
这篇文章主要介绍了Shell脚本去重的几种方法实例,本文直接给出代码实例,需要的朋友可以参考下
测试文件
复制代码 代码如下:
[root@bogon ~]# cat >test
jason
jason
jason
fffff
jason
按 Ctr + D保存
1、sort -u
复制代码 代码如下:
[root@bogon ~]# sort -u test
fffff
jason
2、uniq
复制代码 代码如下:
[root@bogon ~]# uniq test
jason
fffff
jason
由此可见,uniq需要先排序后才能去重
3、sort、管道和uniq结合运用
去除重复并保留一份重复的数据
复制代码 代码如下:
[root@bogon ~]# sort test|uniq
fffff
jason
去除所有重复的行(不保留重复的行),并计算行数
复制代码 代码如下:
[root@bogon ~]# sort test|uniq -uc
1 fffff
找出所有重复的行,并计算行数
复制代码 代码如下:
[root@bogon ~]# sort test|uniq -dc
4 jason
根据某个字段去重
将原有数据改为
复制代码 代码如下:
[root@bogon ~]# more test
jason 1
jason 2
jason 1
fffff 2
jason 3
[root@bogon ~]# sort -k 1,1 -u test
fffff 2
jason 1
man sort查看sort的用法,-k参数是这么描述的:
复制代码 代码如下:
-k, --key=POS1[,POS2]
start a key at POS1 (origin 1), end it at POS2 (default end of line)
也就是说-k哪几个列进行排序,pos1是开始列,pos2是结束列
相关文章
使用Shell 脚本实现每隔100行插入一条记录且记录第一列包含行号其他列不变
本文通过实例代码给大家讲解了使用Shell 脚本实现每隔100行插入一条记录且记录第一列包含行号其他列不变的实现方法,非常不错,具有参考借鉴价值,需要的朋友参考下2016-12-12Linux中使用locate和find进行不区分大小写的文件搜索
在日常使用计算机的过程中,尤其是处理大量文件时,快速找到特定文件变得尤为重要,Linux系统提供了许多命令行工具,其中“locate”和“find”是两个常用的文件搜索工具,本文给大家介绍了如何在Linux中使用locate和find进行不区分大小写的文件搜索2024-05-05Linux 中 RPM包 安装 查询 卸载命令小结及yum命令详解
RPM 的全称为Redhat Package Manager ,是由Redhat 公司提出的,用于管理Linux 下软件包的软件。Linux 安装时,除了几个核心模块以外,其余几乎所有的模块均通过RPM 完成安装。RPM 有五种操作模式,分别为:安装、卸载、升级、查询和验证2015-11-11实现MySQL定时批量检查表repair和优化表optimize table的shell脚本
这篇文章主要介绍了实现MySQL定时批量检查表repair和优化表optimize table的shell脚本,非常实用,需要的朋友可以参考下2014-07-07
最新评论