有没有比 更快地提取 tar.gz 文件的方法tar -zxvf filenamehere
?
我们有大文件,并正在尝试优化操作。
答案1
pigz
是 gzip 的并行版本。虽然它只使用单个线程进行解压缩,但它会启动 3 个额外的线程进行读取、写入和检查计算。您的结果可能会有所不同,但我们已经看到我们的一些数据集的解压缩有了显着的改进。安装 pigz 后,可以使用以下命令提取 tar 文件:
pigz -dc target.tar.gz | tar xf -
答案2
如果 tar 包中有很多很多小文件,请取消‘v’参数,再试一次!
答案3
如果你想查看进度,请使用类似pv
。以下是示例:
pigz -dc mysql-binary-backup.tar.gz | pv | tar xf -
答案4
使用 pigz 可以加快提取速度,使用 pv 可以查看提取进度。将 pv 的输出存储到文件中,您可以在后台运行命令并随时查看进度。
pigz -dc mysql-binary-backup.tar.gz | pv --force 2> progress.txt | tar xf - &
如果 stderr 不是终端,pv 通常不会输出视觉显示。--force
确保强制 pv 这样做。然后我们只需使用2>
progress.txt 将 stderr 重定向并将 stdout 传送到 tar 命令。&
最后将在后台运行该命令。
您只需运行tail -f progress.txt