重复行去除工具
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_15292d5a/yjkj-cn-duplicate-remover。
技能介绍
要解决什么问题
日志合并、CSV 去重、配置片段整理时,你常常需要把多段文本里的重复行删掉,同时决定是保留「第一次出现的顺序」还是按字典序排序。手工 sort | uniq 能搞定一部分场景,但一旦要统计每行重复了几次,或要在对话里让模型直接产出干净文本,就需要一套明确、可复用的规则。
技能如何工作
本技能面向重复行去除:对输入文本按行切分,识别完全相同的行(通常按整行字符串匹配),然后:
- 去重:输出去重后的行集合或列表
- 顺序:默认倾向保留首次出现顺序;若资料或你的指令要求排序,则按行内容排序后再输出
- 统计:可汇总每行出现的重复次数,便于核对源数据是否异常
实现侧强调纯 Python 标准库,不依赖第三方包,适合在受限环境或一次性脚本里快速落地。
适用边界与注意点
- 匹配粒度是整行;行内空白、大小写、标点不同会被视为不同行,必要时请先规范化输入。
- 「保留顺序」与「排序」是互斥策略,使用前在提示里写清楚期望。
- 超大文件应分块处理或走流式逻辑,避免一次性读入内存;技能描述的是文本处理语义,不替代你对数据规模的评估。
使用场景
- 合并多台机器导出的访问日志后,按整行去重并保留首次出现顺序,避免重复统计同一请求
- 整理从问卷系统导出的多选答案列表,删除完全相同的选项行并统计每行出现次数
- 把几次复制的 nginx 配置片段粘贴在一起,去掉重复 directive 行后再写回仓库
- 对爬虫抓取的 URL 列表做行级去重,需要按字典序排序输出以便和基准文件 diff
适合人员
- 负责 ELK 或自建日志管道的 SRE,需要在入库前快速去掉重复日志行
- 写数据清洗脚本的后端工程师,希望用标准库完成去重与重复次数统计、不引入新依赖
- 维护开源示例或文档的维护者,要把用户提交的重复配置行整理成一份干净清单
- 做竞品或舆情采集的分析员,合并多源文本列表时需要可说明的顺序或排序策略