linux中uniq的用法

#uniq [参数] file
uniq -u text.txt
#只显示不重复行
uniq -d text.txt
#只显示重复行,只显示一行
uniq -c text.txt
#显示每行重复次数
uniq -D text.txt
#显示重复行,每行都显示
uniq -i text.txt
#忽略大小写

 

### 使用 `sort` 和 `uniq` 对文件内容进行排序和去重 对于 Linux 环境下文件内容的排序与去重操作,可以通过组合使用 `sort` 和 `uniq` 命令来实现。 #### 排序并去除重复行 当需要对文件中的每一行按特定顺序排列,并移除相邻的重复项时,可以采用以下方式: ```bash $ sort file.txt | uniq ``` 此命令首先通过 `sort` 将 `file.txt` 文件的内容依据默认字典顺序进行升序排列[^2];接着利用 `uniq` 移除非唯一连续出现的行。需要注意的是,`uniq` 只能删除相连的重复条目,因此通常会先做一次排序以确保相同的记录被聚集在一起[^3]。 如果希望得到的结果不仅限于直接前后相接的情况,则应考虑增加 `-d` 参数给 `uniq` 来仅保留那些确实存在多份拷贝的数据行,或是借助其他工具如 `awk` 或者再次调用 `sort -u` 实现全局范围内的不重复化处理。 另外一种更简洁的方法是在单次 `sort` 调用中完成这两步工作: ```bash $ sort -u file.txt ``` 这里 `-u` 选项指示 `sort` 自动过滤掉多余的副本而只留下独一无二的那一部分[^1]。 #### 进阶应用实例 假设有一个名为 `input.txt` 的文本文件,其内部含有若干整数以及字母字符混合而成的一系列字符串。为了获取一份既经过数值大小又无冗余版本的新列表,可采取下面这条指令链路: ```bash $ cat input.txt | sort -n | uniq ``` 上述语句里加入了额外参数 `-n` 给到 `sort` ,使得整个集合能够基于纯数字逻辑重新编排位置关系后再交由 `uniq` 处理多余元素。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值