最近需要对256G的txt文件做排序,参考文章如何对一个大文本进行按每行去重操作?写了如下脚本

#! /bin/ksh

#Cleanup any lefover files

rm -f *.sorted > /dev/null

rm -f sorted.file

#Splitting $ORIGINAL_FILE into chunks ...

#split -l $MAX_LINES_PER_CHUNK -a 4 $ORIGINAL_FILE $CHUNK_FILE_PREFIX

for file in *.txt

do

sort $file > $file.sorted &

done

wait

#Merging chunks to $SORTED_FILE ...

sort -m *.sorted > sorted.file

#Cleanup any lefover files

rm -f *.sorted > /dev/null

可以比较快的得到排序后的文件sorted.file,但是如果要去掉重复记录的话就需要更改脚本

在sort -m *.sorted > sorted.file下面增加

sort -u -m *.sorted > sorted.file.uniqe

这样可以获得两个文件,然后使用diff比较就可以得到重复数据

diff sorted.file sorted.file.uniqe

818d817

< 1b9f36864e9b343c9456afea1f1c4318a3b06b0729c49113b888e68204667e0037348d55fb3fdd9fbbe1d2d7b2ec498dbc6fdb9119673d1cf681ce1d272d2f5f0c227daa3bfc0053891153e0ff197826b2a2ada24e9b1651d53f21c66baeba3db7340b04b4ae87fe33eab4d19a31c1cc9f654ebdd5d17f31847ae062be1b92bd

实际运行中,由于我需要排序的文件在200G以上,因此出现下面的问题:

/tmp/sortA3aLjF: No space left on device

查看tmp空间确实不够用,查看info sort,看到

The -T option allows you to specify somewhere else besides /tmp for sort to put its stuff.

因此修改脚本如下:

#! /bin/ksh

#Cleanup any lefover files

rm -f *.sorted > /dev/null

rm -f sorted.file

#Splitting $ORIGINAL_FILE into chunks ...

#split -l $MAX_LINES_PER_CHUNK -a 4 $ORIGINAL_FILE $CHUNK_FILE_PREFIX

for file in *.txt

do

sort -T /data1 $file > $file.sorted

done

wait

#Merging chunks to $SORTED_FILE ...

sort -T /data1 -m *.sorted > sorted.file

sort -T /data1 -u -m *.sorted > sorted.file.uniqe

#Cleanup any lefover files

#rm -f *.sorted > /dev/null

其中/data1/目录是另外一个2T的独立磁盘

oracle怎么分组查重,2021-04-02 大文本文件数据查重相关推荐

  1. 2021高考成绩查询怎么查小分,2021微信哪个小程序可以查成绩 高考成绩怎么查

    很多同学想知道微信哪个小程序可以查高考成绩,以下是一些相关信息的整理,希望能对同学们有所帮助. 微信哪个小程序可以查成绩 国家政务服务平台 考生可通过微信搜一搜,搜索"国家政务服务平台&qu ...

  2. E.04.02 Zoom Fatigue: The Differing Impact on Introverts and Extroverts

    2021.04.02 文章目录 [课程导读] [英文原文] [外刊原文] [课程导读] 疫情之下,视频会议软件成了职场刚需.近日,有研究发现,性格外向和内向的人,在参加视频会议时都会感到疲惫,但他们觉 ...

  3. CST STUDIO SUITE 2021.04 SP4

    CST Studio Suite 2021.04 -发布说明 此补丁是一个推荐的更新,其中包括以下修正和改进. 许可 CST Studio Suite前端包括CST Studio Suite Bio ...

  4. 2021高考无准考证成绩查询,2021考研没有准考证号怎么查成绩

    2021考研没有准考证号怎么查成绩2020-12-10 11:02:14文/徐克达 考研初试结束后,大家最关心的就是成绩的事情了,那么考研没有准考证号怎么查成绩呢?下面是小编整理的详细内容,一起来看看 ...

  5. mysql添加用户查重的方法_mysql 开发技巧之JOIN 更新和数据查重/去重

    主要涉及:JOIN .JOIN 更新.GROUP BY HAVING 数据查重/去重 1 INNER JOIN.LEFT JOIN.RIGHT JOIN.FULL JOIN(MySQL 不支持).CR ...

  6. oracle分组聚合查询,Oracle中分组查询group by用法规则解析

    本篇文章小编给大家分享一下Oracle中分组查询group by用法规则解析,文章介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. Oracle中group by ...

  7. word公式编辑器_论文查重算公式吗 公式怎样避免查重?

    论文查重算公式吗 公式怎样避免查重?每一个毕业生想要毕业都要经过论文查重这一关,仅有通过了论文查重,才可以进入答辩.在论文检测的情况下,不少同学论文中一定会应用大批量的计算公式,且计算公式全部都是固定 ...

  8. 2021年的高考大约多久可以查询成绩,2021高考完什么时候可以查分数 查成绩的时间...

    很多同学想知道高考完什么时候可以查分数,以下是一些相关信息的整理,希望能对同学们有所帮助. 高考完什么时候可以查分数 2021年不同省市的采用的高考模式是不同的,所以高考考试结束的时间也是有差别的,有 ...

  9. Excel数据查重小技巧

    Excel数据查重小技巧 方法一 1.选中要查重的一列(例如:A1) 2.点击:条件格式->突出显示单元格规则->重复值-确定 3.重复的数据就被标记出来了 方法二 1.选中要查询的数据列 ...

最新文章

  1. OpenGL与OpenCV实现增强现实
  2. 【剑指offer】面试题22:链表中倒数第k个节点(Java)
  3. 模式识别与机器学习笔记(一)
  4. 7-1 输出从1加到N的和 (9 分)
  5. (09)VHDL例化VHDL
  6. jquery 全国 三联 地址选择
  7. 凸优化第九章无约束优化 9.2 下降方法
  8. gps天线拆解图片_GPS天线原理
  9. 魔兽世界服务器修改模型,《魔兽世界》魔兽世界修改模型攻略
  10. Adobe软件中PS、PR、AE、AI软件如何安装【附软件下载】
  11. 插件//better-scroll(BScroll/滚动插件)使用方法及其在 vue 中使用
  12. hget hmget redis api使用
  13. 员工不明白面试流程,傻傻等了三个月,收到面试评价短信蒙了
  14. 华为交换机ntp自动校时配置
  15. 图文并茂,动手操作一台宝马X7仪表里程校调,看看你买的二手 “新” 宝马是怎么调出来的!
  16. 1亿数据 redis 内存_Redis10亿数据量只需要100MB内存,为什么这么牛?
  17. 03 - OAI接入网搭建过程 - 研0
  18. B2C网站宽度和风格的探讨
  19. 搜狐畅游2021届校园招聘简章
  20. 在jython中获取jython-[standalone-]x.x.x.jar执行文件目录

热门文章

  1. [实训题目EmoProfo]基于深度学习的表情识别服务搭建(一)
  2. 学JAVA还是学Python
  3. 三菱系统四轴正反转参数_三菱第四轴参数.docx
  4. anaconda调用TensorFlow出现dtypes.py:526: FutureWarning: Passing (type, 1) or ‘1type‘ as a synonym of typ
  5. IntelliJ IDEA 为JAVA 项目添加lib
  6. Python练习题(五)
  7. FinClip 2021 年 12 月产品大事记
  8. java ssm框架调用微信_Java开发SSM框架微信退款的实现
  9. 3M年度调查显示,疫情挑战下中国受访者对科学的信任度居全球首位
  10. 中药材鉴别-方法:聚类;PCA 主成分分析;线性判别式分析;判别式检验