我有一个很大的tar.gz存档文件,它有nxml文件,总大小约为5gb。我的目标是从其中提取文件,但是,我不需要全部提取它们。我必须提取所有名称大于阈值的文件。
例如:让我们考虑1000是我们的阈值。所以
path/to/file/900.nxml不会被提取,但是
提取path/to/file/1100.nxml。
因此,我的要求是从存档中提取一个有条件的文件。
谢谢
发布于 2019-08-08 08:44:54
tar -tf <archive>获取存档中的文件列表。<filelist>,每文件一行。
tar -xf <archive> -T <filelist>提取所需的文件。
选项-T或--files-from从给定文件中读取要处理的文件名。
发布于 2019-08-09 06:03:15
您还可以使用tar的--wildcards选项。
例如,当阈值为1000时,可以使用tar -xf tar.gz --wildcards path/to/files/????*.nxml。?将匹配一个字符,使用*将匹配任意数量的字符。此模式将查找任何具有4个或更多字符的文件名。
希望这能有所帮助。
https://stackoverflow.com/questions/57406452
复制相似问题