首页
注册
登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请
登录
V2EX
›
程序员
要对单个 6.20TB 的超大 csv 文件保持顺序的情况下进行去除重复行,有什么好思路?显然不可能加载进内存
drymonfidelia
·
173 天前
· 11858 次点击
这是一个创建于 173 天前的主题,其中的信息可能已经有所发展或是发生改变。
101 条回复
•
2024-06-08 02:13:43 +08:00
1
2
❮
❯
101
Keuin
166 天前
@
Keuin
没有保序,bugfix 一下。假设 csv 有 4 列,把 sort 替换成`sort -u -t, -k1,4 | sort -t, -k5`,把结尾的 uniq 删掉,变成:
```shell
awk '{print $0","NR}' input | sort -u -t, -k1,4 | sort -t, -k5 | sed -E 's/,[0-9]+$//' | uniq
```
不能假设列数的话,受这几个 shell 工具的限制,需要换一个没有出现过的字符做分隔符
1
2
❮
❯
关于
·
帮助文档
·
博客
·
API
·
FAQ
·
实用小工具
·
2712 人在线
最高记录 6679
·
Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 22ms ·
UTC 15:26
·
PVG 23:26
·
LAX 07:26
·
JFK 10:26
Developed with
CodeLauncher
♥ Do have faith in what you're doing.