2013-04-02 62 views
0

我想在我的主目錄中搜索abc.xml文件的數量。這些XML文件在罐子裏面。我使用的是Ubuntu 12.04 LTS。如何使用GREP 在jar文件中搜索這些xml文件。我想知道該目錄內的xml文件的總數量使用GREP在罐子裏搜索xml文件

回答

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 
+0

人無我有其中包含幾個罐子的目錄。一些包含名爲abc .xml的xml的jar包。我想在該目錄中包含abc.xml的總數。 – Sharockz

+0

請參閱上面編輯的回覆。 – devnull

+0

感謝它的工作。請幫助得到什麼是包含該XML的罐子,而不是得到總的XML計數 – Sharockz