Я ищу файл .class внутри группы банок.
jar tf abc.jar
работает для одного файла. Я пытался
find -name "*.jar" | xargs jar tf
ничего не печатает. Единственное решение, которое я могу придумать, это распаковать все, а затем искать. Есть ли способ лучше? Я на LUnix.
Редактировать :
При сканировании многих jar-файлов полезно напечатать имя файла jar вместе с классом. Этот метод хорошо работает:
find . | grep jar$ | while read fname; do jar tf $fname | grep SchemaBuilder && echo $fname; done
Произведенный образец продукции:
1572 Wed Jul 25 10:20:18 EDT 2007 org/apache/ws/commons/schema/SchemaBuilder$1.class
1718 Wed Jul 25 10:20:18 EDT 2007 org/apache/ws/commons/schema/SchemaBuilder$2.class
42607 Wed Jul 25 10:20:18 EDT 2007 org/apache/ws/commons/schema/SchemaBuilder.class
./XmlSchema-1.3.2.jar
1572 Wed Jul 25 10:20:18 EDT 2007 org/apache/ws/commons/schema/SchemaBuilder$1.class
1718 Wed Jul 25 10:20:18 EDT 2007 org/apache/ws/commons/schema/SchemaBuilder$2.class
42607 Wed Jul 25 10:20:18 EDT 2007 org/apache/ws/commons/schema/SchemaBuilder.class
./XmlSchema.jar