使用GREP在jar中搜索xml文件

时间:2013-04-02 10:07:56

标签: jar grep ubuntu-12.04

我想在主目录中搜索abc.xml文件的数量。那些xml文件在jar里面。我使用的是ubuntu 12.04 LTS。如何使用GREP在jar中搜索那些xml文件 。我想知道该目录中的总xml文件数量

1 个答案:

答案 0 :(得分:1)

根据我的收集,您想知道.jar文件中包含的XML文件的数量。如果这是正确的,那么以下内容将实现所需:

jar tvf <jarfile> | grep "\.xml$" | wc -l

假设您要在当前目录(和子目录)中的所有jar文件中进行搜索,以下应该可以解决这个问题:

total=0;
for i in `find . -type f -name "*.jar"`; do
  count=$(jar tvf $i | grep "abc.xml" | wc -l);
  let total+=count;
done
echo ${total}

简单地列出匹配的jar文件:

for i in `find . -type f -name "*.jar"`; do
  jar tvf $i | grep "abc.xml";
  if [ $? -eq 0 ]; then echo $i; fi;
done