我们需要从包含30多个文件的tarball文件中提取5个文件,并在解压缩时扩展到大约60 GB。不幸的是,我们机器上只有大约20 GB的空闲空间。所需的五个文件只需要大约5 GB解压缩。
有没有办法在磁盘空间限制内只提取这五个文件?
使用tar xvjf <archive> <file>
似乎不起作用。
谢谢!
答案 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