我有一个过程可以循环访问在每个文件上调用gunzip
的文件。
想知道仅对所有文件调用一次gunzip
会更快。
gunzip file1.gz file2.gz
实际如何工作?当您要解压缩多个大文件时,有没有一种更快的方法?
答案 0 :(得分:0)
那将是无用的微观优化。
与解压缩时间相比,循环时间相形见war,特别是在您解压缩大文件的情况下。
做任何更具可读性的事情。请注意,当文件数量很大时,循环没有问题,而单个gunzip命令可能会遇到命令行限制,并且需要xargs(1)。
答案 1 :(得分:0)
您可以使用 GNU Parallel 并行执行所有操作,如下所示:
parallel gunzip {} ::: *.gz
这将一次解压缩N个,其中N是您拥有的CPU内核数。
如果您想要进度条:
parallel --bar gunzip {} ::: *.gz
如果您想知道它会做什么,但是却没有实际做任何事情:
parallel --dry-run ...