unix – 在tar文件中执行grep操作而不提取

我有包含特定模式的文件列表,但这些文件已经被格式化了。现在我想在tar文件搜索模式,并且知道哪些文件包含模式而不解压缩文件

任何想法…?

tar命令有一个-O开关将文件提取到标准输出。所以你可以将这些输出管道输出到grep / awk
tar xvf  test.tar -O | awk '/pattern/{print}'

tar xvf  test.tar -O | grep "pattern"

例如,返回文件名称一个找到的模式

tar tf myarchive.tar | while read -r FILE
do
    if tar xf test.tar $FILE  -O | grep "pattern" ;then
        echo "found pattern in : $FILE"
    fi
done

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...