Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从存档文件中有条件地提取文件_Python_Bash_Gzip_Python 2.x_Tar - Fatal编程技术网

Python 从存档文件中有条件地提取文件

Python 从存档文件中有条件地提取文件,python,bash,gzip,python-2.x,tar,Python,Bash,Gzip,Python 2.x,Tar,我有一个很大的tar.gz归档文件,其中包含nxml文件,总大小约为5gb。 我的目标是从中提取文件,但我不必提取所有文件。我必须提取所有那些名称大于阈值的文件 例如: 让我们考虑1000是我们的阈值。所以 path/to/file/900.nxml将不被提取,但 将提取路径/to/file/1100.nxml 因此,我的要求是从归档文件中有条件地提取文件。 谢谢 使用tar-tf 您还可以使用tar的--通配符选项。 例如,在阈值为1000的情况下,可以使用tar-xf tar.gz--通配

我有一个很大的tar.gz归档文件,其中包含
nxml
文件,总大小约为5gb。 我的目标是从中提取文件,但我不必提取所有文件。我必须提取所有那些名称大于阈值的文件

例如: 让我们考虑1000是我们的阈值。所以
path/to/file/900.nxml将不被提取,但
将提取路径/to/file/1100.nxml

因此,我的要求是从归档文件中有条件地提取文件。
谢谢

  • 使用tar-tf
  • 您还可以使用tar的
    --通配符
    选项。
    例如,在阈值为1000的情况下,可以使用
    tar-xf tar.gz--通配符路径/to/files/????*.nxml
    将匹配一个字符,使用
    *
    将匹配任意数量的字符。此模式将查找任何包含4个或更多字符的文件名。

    希望这能有所帮助。

    谢谢,正如我所说,我的存档中有大约50万个文件,因此命令
    tar-xf file1 file2…
    是否有任何限制?如果有,请您提及限制,以便我可以分阶段进行提取。谢谢提醒,我已经更新了我的答案。要克服命令行长度的限制,您需要使用选项
    --filesfrom
    (short
    -T
    )。