加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

unix – 如何合并排序的文件而不使用临时文件?

发布时间:2020-12-16 01:25:17 所属栏目:安全 来源:网络整理
导读:我试图在UNIX / Linux脚本中使用sort -m合并许多排序的文件,我注意到排序首先将结果写入临时文件,然后将其复制到目标.我对-m的理解是,它假定文件被排序,所以使用临时文件是完全不必要的,它会浪费硬盘空间和CPU周期(我在管道中使用排序,等待排序输出任何东西.
我试图在UNIX / Linux脚本中使用sort -m合并许多排序的文件,我注意到排序首先将结果写入临时文件,然后将其复制到目标.我对-m的理解是,它假定文件被排序,所以使用临时文件是完全不必要的,它会浪费硬盘空间和CPU周期(我在管道中使用排序,等待排序输出任何东西.)有没有办法告诉排序在合并排序的文件时不使用临时文件?还是更好的版本呢?

确切的CL看起来像:

$sort -m -s -t '_' -k 1,1n -k 2,2n <(gunzip <file_1) [...] <(gunzip <file_n) | gzip >output

我正在使用GNU coreutils 5.97中的排序.

从人类排序中查看这些选项,他们可能会让您最小化合并所需的空间.

–batch-size = NMERGE一次合并大多数NMERGE输入;更多使用临时文件

–compress-program = PROG使用PROG压缩临时性;用PROG -d解压缩它们

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读