大型文件去重

1.背景

面试的时候经常会被问到一个问题,大型的文件该如何去重。写一个python脚本是效率很差的策略。这里讲下如何用shell实现。

2.流程

(1)文件切割

用split函数对于文件切割。

split -l 10000 test.txt

-l是按照行切割,10000是每10000行切割成一份文件。切割完会在当前目录自动生成10000行一例的文件。

(2)去重

sort -u origin.txt -o output.txt

本文来自博客 “李博Garvin“
转载请标明出处:http://blog.csdn.net/buptgshengod]

时间: 2024-08-31 16:46:54

大型文件去重的相关文章

360云盘文件去重怎么用

  1.首先我们登录360云盘 2.进入功能大全==点击文件去重 3.在弹出的对话框中点击"全盘扫描" 4.然后我们可以看到它就帮你扫出了你的360云盘中重复的文件,如果没有重要作用,那么我们就将其删除

360云盘文件去重功能使用步骤图文教程

  1.首先我们登录360云盘. 2.进入功能大全==点击文件去重. 3.在弹出的对话框中点击"全盘扫描". 4.然后我们可以看到它就帮你扫出了你的360云盘中重复的文件,如果没有重要作用,那么我们就将其删除.

shell两个文件去重的多种姿势_linux shell

前言 大家都知道shell在文本处理上确有极大优势,比如多文本合并.去重等,但是最近遇到了一个难搞的问题,即两个大数据量文件去重.下面来看看详细的介绍吧. 要求  有txt文件A.txt和B.txt. 其中A为关键词和搜索量,以逗号分隔,约90万行. B为关键词,约400万行. 需要从A中找出与B重复的关键词. 我试了N种姿势,但结果都不尽人意,最奇怪的是有些方法对小数据量的测试文件有用,一旦用在A与B上就会失败,真叫人百思不得其解. 姿势一: awk -F, '{print $1}' A >k

360云盘如何删除一样的文件 360云盘文件去重使用方法

1.我们使用自己的账号打开并登录360云盘,打开进入 2.然后在打开界面会看到有一个"功能大全"点击进入之后会看到有一个"文件去重"了,我们点击它打开进入 3.然后会弹出提示要"全盘扫描"了,具体如下图所示 4.在我们点击全盘扫描之后会看到有一个 360云盘中重复的文件,然后我们就可以删除重复的文件了,这个删除重复文件还是需要手工来操作了. 好了到此关于文件去重功能的使用也就介绍完了,其实是非常的简单的哦.

python3 文件去重

import hashlib import os class DirProc(): def __init__(self): self.main_dir = "C://software//导数据//mtm//imgs" def md5(self, fname): if os.path.exists(fname): hash_md5 = hashlib.md5() with open(fname, "rb") as f: for chunk in iter(lambda

清理电脑大型垃圾文件要如何操作

  清理电脑文件 电脑的文件清理可以通过手动来进行操作,拿桌面文件做为例子,找到桌面文件后点击进入属性页面. 在文件属性的页面中,我们可以对文件进行相关的操作,比如找到删除按钮点击进行删除. 彻底清理文件 对于电脑的文件彻底删除,我们可以找到电脑的回收站进行设置,找到回收站点击属性页面. 进入到电脑回收站的属性页面后,我们就可以设置相关的垃圾文件进行彻底的清理. 腾讯电脑管家大型文件删除 对于电脑中的大型文件删除,我们可以使用腾讯电脑管家的文件清理功能,点击打开腾讯电脑管家的文件清理功能. 通过

linux下文件合并、分割、去重

1.文件合并  1.1文件上下合并 cat f1 f2> muti  (将文件f1.f2合并成文件muti,f1在上,f2在下) 1.2左右合并 paste f1 f2 > muti  (将文件f1.f2合并成文件muti,f1在左,f2在右,默认使用tab键隔开)   2.文件分割 2.1按行数分割 split -l 5 file (将文件file进行分割,每个分割后的小文件,行数不大于5) 2.2按大小切割 spilt -C 20M file (将文件file进行分割,每个分割后的文件最大

使用JSF和MyFaces实现文件上载

js Web浏览器为我们利用Web应用程序发送文件提供了一条简单的途径,但是当前版本的Java Web标准(servlets.JSP和JSF)却无法为我们提供任何帮助.幸运的是,有一些第三方框架组件(例如Apache Commons File Upload. Apache MyFaces和Oracle ADF Faces)实现了这种特性,它们都暴露了简单的API和定制的标记(tag). 本文的前面一部分介绍文件上载操作是如何实现的,解释了MyFaces和通用文件上载(前者在内部使用了后者).我们

php上传大文件失败的解决办法

昨天一做php开发的网友问我为什么上传大文件总是失败,但是上传小文件就没有问题.作者一时半会儿也不知道什么原因,遂网上搜搜帮其分析原因,看到一篇很不错的关于php上传大文件失败的各种原因的总结以及各种解决办法的,于是转来与大家分享之.    下面分别是各种原因以及解决办法 (1)文件上传时存放文件的临时目录必须是开启的并且是 PHP 进程所有者用户可写的目录.如果未指定则 PHP 使用系统默认值. php.ini文件中upload_tmp_dir用来说明PHP上传的文件放置的临时目录,要想上传文