如何解决磁盘空间限制内的大型tarball文件?

时间:2013-04-03 01:16:30

标签: unix gzip tar

我们需要从包含30多个文件的tarball文件中提取5个文件,并在解压缩时扩展到大约60 GB。不幸的是,我们机器上只有大约20 GB的空闲空间。所需的五个文件只需要大约5 GB解压缩。

有没有办法在磁盘空间限制内只提取这五个文件?

使用tar xvjf <archive> <file>似乎不起作用。

谢谢!

2 个答案:

答案 0 :(得分:1)

GNU tar具有来自tarball的delete elements功能。理论上,这将允许您将tarball修剪为您需要的5个文件。这个功能被描述为很慢,并且在一个大小的tarball上,可能非常慢。如果你没有tarball的备份,那么你不想尝试。

从GNU tar手册复制的是这个例子:

  

从档案中删除文件'blues'的所有版本   'practice'目录中的'collection.tar',确保你在   那个目录,然后,

$ tar --list --file=collection.tar
blues
folk
jazz
rock
$ tar --delete --file=collection.tar blues
$ tar --list --file=collection.tar
folk
jazz
rock

答案 1 :(得分:0)

在本地服务器上: nc server 9999 | tar -zxvf -

在远程服务器上: nc -l 9999&lt; yourfile.tar.gz