任何执行 tar.bz2 文件并行解压的 linux 命令?

use*_*637 19 gzip compression tar bzip2

我有一个相当大的文件(~50GB),运行需要一些时间

tar xvf file.tar.bz2

在上面。我知道可以对 bzip2 文件进行并行压缩的程序,但不知道可以对 bzip2 文件进行并行解压缩的程序。

是否有任何程序可以实现这一目标?用于从文件中提取的命令的确切语法是什么?

我正在使用 ubuntu 12.04

dev*_*av2 23

lbzip2并且pbzip2是可用于并行压缩和解压缩的工具。

用法:

lbzip2 -d <file.tar.bz2> 
pbzip2 -d <file.tar.bz2> 
Run Code Online (Sandbox Code Playgroud)

-d 选项用于解压。

要安装这些软件包:

压缩包 安装 lbzip2类型:

sudo apt-get install lbzip2
Run Code Online (Sandbox Code Playgroud)

pbzip2 安装 pbzip2类型:

sudo apt-get install pbzip2
Run Code Online (Sandbox Code Playgroud)

  • 是的,当您运行 `lbzip2 -d -n 2 file.tar.bz2` 时,它会给出一个 tar 文件。这需要解压。 (2认同)

Lud*_*sin 13

您可以使用 tar选项使用单个命令解压缩存档-I。它使您能够使用任何支持该-d选项的压缩实用程序。

tar -I lbzip2 -xvf <file.tar.bz2>
Run Code Online (Sandbox Code Playgroud)

它在处理大档案时非常有用,因为您不需要目标文件系统(tar 临时文件和输出文件)上可用的未压缩大小的两倍。它也更快,因为您需要的磁盘 IO 少得多。

当然,这在压缩时也有效:

tar -I lbzip2 -cvpf <file.tar.bz2> <file>
Run Code Online (Sandbox Code Playgroud)

检查tar --help更多选项。


Sam*_*Sam 5

您可以使用带有-d标志的pbzip2来“解压缩”,

从联机帮助页:

  pbzip2 -d myfile.tar.bz2
Run Code Online (Sandbox Code Playgroud)

本示例将文件“myfile.tar.bz2”解压为解压文件“myfile.tar”。它将使用自动检测到的处理器数量(如果不支持自动检测,则使用 2 个处理器)。

解压后,需要解压文件

 tar xf myfile.tar
Run Code Online (Sandbox Code Playgroud)

tar 文件只是一个容器,您可以对其应用多种压缩算法,例如,您可以使用“.tar.gz”或“.tar.bz2”,它们都应用了不同的压缩算法。所以 pbzip2 只会解压缩档案,但不会解压缩文件,用于解压缩tar文件。Tar 不应该花很长时间,因为存档已经解压缩,它只会提取文件。(请注意,我们没有在 tar 命令中使用 'z' 标志或 'j' 标志,它们表明我们也想解压缩文件)