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

前端之家收集整理的这篇文章主要介绍了unix – 如何合并排序的文件而不使用临时文件?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图在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解压缩它们

原文链接:https://www.f2er.com/bash/384053.html

猜你在找的Bash相关文章