python - 从已排序的超大文件(每个 200G)列表中删除重复项的最佳方法?

标签 python linux large-files duplicates

  • 之前提出的其他问题没有回答我的问题!

我有一系列大文件(200 G),每个文件都经过排序并包含重复项,如下所示:

 50.21.180.100|a.ac
 50.21.180.100|a.ac
 50.21.180.100|a.ac
 50.21.180.100|a.ac
 50.21.180.100|a.ac
 50.21.180.100| b.ac
 50.21.180.100| b.ac
 50.21.180.100|b.ac
 50.21.180.100|b.ac
 50.21.180.100|b.ac
 50.21.180.100| c.ac
 50.21.180.100| c.ac
 50.21.180.100|c.ac
 50.21.180.100|c.ac
 50.21.180.100|c.ac
 50.21.180.100|c.ac
 50.21.180.100| d.ac

预期输出:

50.21.180.100|a.ac
50.21.180.100|b.ac
50.21.180.100|c.ac
50.21.180.100|d.ac

是否有人对删除这些重复项的最佳方法(时间和内存方面)有任何建议?是使用 Linux bash 还是 Python 或者其他语言?

最佳答案

首先删除空格,然后运行uniq:

cat infile.txt | tr -d " " | uniq > outfile.txt

关于python - 从已排序的超大文件(每个 200G)列表中删除重复项的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27354818/

相关文章:

linux - 为什么 "grep"在此示例中表现不同?

java - Android中如何将大量静态文本转换为数组

java - 从 23GB 的文件中读取 2 个字节

python - 读取h5数据集python的一部分

Python groupby 按分隔符拆分列表

python - 从 0's and 1' 的字符串创建一组字符串,其中仅更改两个字符(python)

python - 如何解决 Python 中的递归关系

python - 捕获图片的cv2分辨率

linux - 3.10 mark_bootmem()中的内核崩溃BUG()

c++ - Arduino 在 Linux 上的多个 http 请求期间挂起,但在 Windows 上不挂起