我想在主目录中搜索abc.xml文件的数量。那些xml文件在jar里面。我使用的是ubuntu 12.04 LTS。如何使用GREP在jar中搜索那些xml文件 。我想知道该目录中的总xml文件数量
答案 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