【问题标题】:how to decompress with pigzpigz如何解压
【发布时间】:2013-02-20 12:37:35
【问题描述】:

我正在尝试使用 pigz 进行并行压缩和解压缩。我找到了一种使用以下命令并行压缩的方法:

tar cf - /input/dir | pigz > output_file.tar.gz

解压的等效命令是什么?我需要能够在命令中指定文件名和输出目录路径才能对我有用。

【问题讨论】:

  • 不过,你不能并行解压缩。
  • pigz 代表 p arallel i implementation of gz ip,是一个gzip 的字谜。它的发音是 pig-zee。
  • @MarkAdler:无论几个极客想在网页上抛出什么,它都会被发音为“pigs”。它们不在语音规则之上。 (他们本来可以,如果他们大写什么的。但如果他们想让它看起来像一个单词,它会像一个单词一样发音。)真的吗?字谜是一件事,人们实际上会这样做吗?我以前从未见过活人这样做;见鬼,我仍然有大约 80% 的人相信这只是他们为侦探节目编造的一些 BS。 :)
  • @atxdba:告诉那些发明 GIF 的人。他们告诉人们它是如何发音的,而我与之交谈的每个人都公开无视它。
  • @Cadoiz:因为 pigz 在撰写本文时没有选择。至于为什么当时没有选择,gzip 依靠以前的内容来构建表格来(解)压缩未来的内容。您需要处理之前发生的事情以了解之后发生的事情。这使得解压过程本质上是串行的。如果你能找到块之间的边界,情况就会改变,但解压缩远没有压缩那么简单。

标签: compression tar gunzip


【解决方案1】:

使用pigz -dc 解压到标准输出。然后像在示例中一样使用> 将输出定向到所需的路径和文件。

您可以只输入pigz 以获得命令选项帮助。

【讨论】:

    【解决方案2】:

    您可能正在寻找以下方面的内容:

    pigz -dc archive.tar.gz | tar xf -
    

    但请注意 Mark Adler(此时是传奇人物)的原始帖子,pigz 不使用多个核心进行减压。但是,它确实使用了额外的内核来进行读取、写入和一些额外的计算,这确实比 gzip 产生了适度的性能提升。享受吧!

    【讨论】:

      【解决方案3】:

      tar -I pigz -xvf compressed_file.tar.gz

      【讨论】:

      • 只是好奇,我还能用tar -xzvf compressed_file.tar.gz来解压pigz压缩的存档吗?
      • 绝对panc,pigz只是一个多线程的gzip压缩/解压器,格式是一样的。
      【解决方案4】:

      出于某种原因,pigz 不会自动完成“.gz”压缩文件,但如果您输入文件名,pigz 会找到它们。

      要解压缩并保留压缩文件,请使用:pigz -dk yourfilename.gz。 如果您不需要压缩版本,请使用 pigz -d yourfilename.gz

      pigz --help 显示所有可用选项。

      【讨论】:

      • 所以-k 的存在决定了存档yourfilename.gz 是否保留?或者它有什么作用?
      • man pigz|grep -A1 -- '-k' -k --keep Do not delete original file after processing.
      猜你喜欢
      • 2016-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-14
      相关资源
      最近更新 更多