查找文件在多个tar包中是否存在的最快方法?

困惑00

除了使用tar tf并根据我要查找的文件检查每个文件的输出之外,还有其他更有效的方法吗?

这就是我目前的操作方式,但是速度非常慢(大约有600-1000个适合的档案search_patterns):

ARRAY=()
ARRAY[0]=/path/to/archives/*search_pattern1*
ARRAY[1]=/path/to/archives/*search_pattern2*
ARRAY[2]=/path/to/archives/*search_pattern3*

for f in ${ARRAY[@]}
do
    if [[ $f =~ "matching_pattern1" ]]; then
        if tar -tf "$f" | grep "matching_pattern2" ; then
            printf "%s\n" $f;
            exit 0;
        fi
    fi
done

对于它的价值,我search_patterns已经连续3天了,我想首先查找与匹配的档案,matching_pattern1然后浏览所有这些档案,matching_pattern2并输出tar包含该档案文件。

安通

Tar文件没有目录(例如zip文件),因此tar tf唯一可以做的就是这样做。

如果必须多次运行,则当然可以列出文件中每个tar文件的内容并进行搜索:

tar tvf oneofthe.tar > oneofthe.tar.lst

如果几乎没有必要重新运行搜索,我什至会这样做,因为先执行该搜索然后搜索而不是搜索(例如使用grep)输出,这几乎不慢。 tar tf

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

查找文件是否在多个压缩的tarball中的最快方法?

来自分类Dev

如何在Expect脚本中查找文件是否存在

来自分类Dev

如何在Expect脚本中查找文件是否存在

来自分类Dev

bash在tar球中查找文件名

来自分类Dev

Python:查找文件中是否存在给定的正则表达式

来自分类Dev

查询以查找文件夹是否存在

来自分类Dev

如何查找文件中是否存在一行并使用 awk 添加具有文件名的列?

来自分类Dev

DOS For if语句在多个目录中查找文件

来自分类Dev

查找文件是否为Ruby中的视频

来自分类Dev

在makefile中查找文件

来自分类Dev

在Ubuntu中查找文件

来自分类Dev

在其他目录的tar存档中查找文件名

来自分类Dev

Windows 7-查找文件夹中单独存在的所有文件

来自分类Dev

查找文件,而同一目录中存在其他文件

来自分类Dev

从文件夹中查找文件

来自分类Dev

从文件夹中查找文件

来自分类Dev

在文件夹中查找文件

来自分类Dev

在文件集合中查找文件

来自分类Dev

查找文件中任何位置包含多个关键字的文件

来自分类Dev

查找json文件中是否存在变量

来自分类Dev

查找文件的任何行是否是另一个文件中的数据子集

来自分类Dev

是否可以从python中的tar包中提取单个文件

来自分类Dev

使用Python提取tar文件的最快方法

来自分类Dev

如何在CLISP中查找文件?

来自分类Dev

Ruby:-查找文件中字符的出现

来自分类Dev

在Windows路径中查找文件

来自分类Dev

查找文件中的最大值

来自分类Dev

在特定目录中查找文件

来自分类Dev

如何查找文件中名称的出现?