加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式 – Grep内部的多个目录和压缩文件

发布时间:2020-12-14 05:48:40 所属栏目:百科 来源:网络整理
导读:我有很多压缩文件,其中每个文件都包含目录中的json文件和txt文件. 我想找到目录中所有压缩文件中的json文件总数. 为了深入挖掘它,我有很多这样的目录. 如何查找所有目录中所有压缩文件中的json文件总数? 解决方法 通过find命令,您可以轻松遍历每个目录并匹
我有很多压缩文件,其中每个文件都包含目录中的json文件和txt文件.
我想找到目录中所有压缩文件中的json文件总数.

为了深入挖掘它,我有很多这样的目录.
如何查找所有目录中所有压缩文件中的json文件总数?

解决方法

通过find命令,您可以轻松遍历每个目录并匹配命名模式,例如* .zip.

当你浏览找到返回的列表(for循环在这里很好)时,你需要列出每个档案中的文件(你不必提取文件,这很好),当你列出时文件你可以做一个简单的grep来找到输出到wc -l的.json模式和管道,它会给你一个“行数” – 在这种情况下它将代表.json文件的数量.

在整个迭代过程中,您将获取此计数并将其添加到“总计”计数中,然后您可以稍后输出.

扩展的样本将是:

total=0;
for file in `find . -name '*.zip'`; do
    count=`unzip -l $file | grep '.json' | wc -l`;
    total=`expr $total + $count`;
done;
echo "Total Json Files: $total";

此示例假定您使用zip来存档文件.如果你使用像tar这样的东西,你需要使用它的文件列表参数(tar -t).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读