Parallel processing 使用lbzip2指定tar中使用的核心数

Parallel processing 使用lbzip2指定tar中使用的核心数,parallel-processing,compression,Parallel Processing,Compression,通常我使用tar和bzip2的组合来存储目录。然而,有些是相当大的,所以我测试了一些允许并行处理的压缩算法。以下是我迄今为止尝试过的两个选项: tar cf dst.tar.bz2 src --use-compress-program=lbzip2 tar c src | pigz > dst.tar.gz lbzip2算法速度更快,压缩比更好。但是,pigz允许我指定它使用的处理器数量。我可以指定lbzip2示例中使用的处理器数量吗 在阅读了tar和lbzip2文档之后,我认为下面这

通常我使用tar和bzip2的组合来存储目录。然而,有些是相当大的,所以我测试了一些允许并行处理的压缩算法。以下是我迄今为止尝试过的两个选项:

tar cf dst.tar.bz2 src --use-compress-program=lbzip2

tar c src | pigz > dst.tar.gz

lbzip2算法速度更快,压缩比更好。但是,pigz允许我指定它使用的处理器数量。我可以指定lbzip2示例中使用的处理器数量吗

在阅读了tar和lbzip2文档之后,我认为下面这行应该可以工作(它不能工作):

您可以在lbzip2调用之后列出选项/标志(即-v成功地将输出设置为verbose),但是由于某些原因,-n标志在这里不起作用。如果有人能指出问题/解决方案,我将不胜感激

但是,lbzip2可通过以下方式与焦油一起使用:

tar c src | lbzip2 -n 4 > dst.tar.bz2

这与最初的gzip调用类似,但是(从我目前的测试来看)仍然比gzip工作得更快

在阅读了tar和lbzip2文档之后,我认为下面这行应该可以工作(它不能工作):

tar cf file.tar.bz2 src --use-compress-program='lbzip2 -n8'
您可以在lbzip2调用之后列出选项/标志(即-v成功地将输出设置为verbose),但是由于某些原因,-n标志在这里不起作用。如果有人能指出问题/解决方案,我将不胜感激

但是,lbzip2可通过以下方式与焦油一起使用:

tar c src | lbzip2 -n 4 > dst.tar.bz2
这与最初的gzip调用类似,但是(从我目前的测试来看)仍然比gzip工作得更快

tar cf file.tar.bz2 src --use-compress-program='lbzip2 -n8'
为我工作


为我工作。

你可以在这里看一下,并考虑基于TAR文档做一些类似的事情。(最下面,您可以将脚本用作压缩程序。然后,脚本可以使用您想要的任何其他参数调用lbzip2。@MarkSetchell现在这是一个有趣的选项。我浏览了文档,发现parallel是一个非常强大的工具,所以在实现它之前,我需要更好地理解它。感谢您将此带给我的同事注意。@DanMašek你给我指出了正确的方向!在重新阅读lbzip2文档后,我看到了-n选项(列出的第一个选项……但我之前查看了它)TAR CF C51.TAR.BZ2CL51——使用压缩程序=LbZIP2-N 4工作,将处理器数设置为4。谢谢指针。您可以将您的解决方案添加为答案并接受它并将其打包。您可以在这里查看并考虑基于TAR文档进行类似的操作。(最下面,您可以将脚本用作压缩程序。然后,脚本可以使用您想要的任何其他参数调用lbzip2。@MarkSetchell现在这是一个有趣的选项。我浏览了文档,发现parallel是一个非常强大的工具,所以在实现它之前,我需要更好地理解它。感谢您将此带给我的同事注意。@DanMašek你给我指出了正确的方向!在重新阅读lbzip2文档后,我看到了-n选项(列出的第一个选项……但我之前查看了它).tar cf CL51.tar.bz2 CL51--use compress program=lbzip2-n 4用于将处理器数设置为4。感谢指针。您可以添加解决方案作为答案并接受它,然后将分数打包。嗯,这在我的机器上仍然不起作用。我得到以下错误:tar(child):lbzip2-n8:无法执行:没有这样的文件或目录嗯,这在我的计算机上仍然不工作。我收到以下错误:tar(子):lbzip2-n8:无法执行:没有这样的文件或目录