常用工具及查询🤖 AI 导航HOT寒霜启示录游戏工具攻略文章关于

文本去重和排序:Excel、WPS 和命令行做法

作者:冰原老猫 · 发布:2026-10-24 · 分类:办公与安全

广告位(预留,AdSense 审核通过后启用)

整理客户名单、汇总报名表、合并几份关键词清单,最后都会遇到同一个问题:里面有重复,顺序也乱。去重和排序看起来简单,真正动手时却常被“明明一样却没去掉”“10 排在了 9 前面”这类细节绊住。下面分别讲 Excel/WPS、命令行两种做法,再把常见的坑一次说清。

Excel / WPS:删除重复项

最直接的方法:选中数据区域,在“数据”选项卡里点“删除重复项”,勾选按哪些列判断重复,确定即可。它会保留每组重复里第一次出现的那一行,删除后面的行。

如果只想先看看哪些重复、不删除,可以用“条件格式 → 突出显示单元格规则 → 重复值”把它们标出来,或者用 COUNTIF 计数:

=COUNTIF(A:A, A2)

结果大于 1 的就是重复项。更多常用函数见 《Excel 常用函数入门》。

用函数生成去重、排序后的新列表

较新版本的 Excel(Microsoft 365 等)和较新版本的 WPS 支持动态数组函数,可以不改原数据,直接生成结果:

=UNIQUE(A2:A100)
=SORT(UNIQUE(A2:A100))

UNIQUE 返回去重后的列表,SORT 再把它排序。原数据一改,结果自动更新。你的版本是否支持这两个函数,以软件官方说明为准;不支持时就用上面的“删除重复项”。

命令行:sort 和 uniq

处理几万行的日志或文本文件,命令行更快。Linux 和 macOS 自带这两个命令:

sort names.txt | uniq > result.txt
sort -u names.txt
sort names.txt | uniq -c | sort -rn | head

第一行和第二行效果相同,都是排序加去重。要特别注意:uniq 只会去掉相邻的重复行,所以必须先 sort。第三行统计每一行出现的次数,并按次数从多到少列出,适合找“出现最多的 IP”“重复最多的关键词”。

常见的坑

现象原因和处理
看起来一样却没被去掉前后多了空格、全角空格或不可见字符。Excel 里可先用 TRIM 清理,命令行可用 sed 去掉行尾空白
大小写算不算重复Excel 的删除重复项不区分大小写;命令行默认区分,sort -f 和 uniq -i 可忽略大小写
10 排在 9 前面按文本逐字比较时 “1” 比 “9” 小。命令行用 sort -n 按数值排序,Excel 里确认单元格是数字格式而不是文本
中文排序顺序不符合预期不同软件和系统的中文排序规则不同,可能按拼音也可能按编码,Excel 的排序选项里可选“字母排序”或“笔画排序”
Windows 文件在 Linux 下去重失败行尾多了 \r,先用 dos2unix 或 tr -d '\r' 转换

去重前后核对一下

处理完别急着交差:记下原来多少行、去掉多少行、剩多少行,三个数要对得上。命令行用 wc -l 数行数;文字材料可以贴进 字数统计工具 看行数和字数。需要从杂乱文本里先提取出手机号、邮箱再去重,可以先用 正则测试工具 调好规则。如果要确认两个大文件内容是否完全一样,比较它们的 哈希值 最快。

命令参数以官方手册为准,例如 GNU coreutils 的 sort 文档;Excel 功能以 Microsoft 官方支持 为准。

广告位(预留,AdSense 审核通过后启用)

相关站内工具

同类文章

← 全部文章