すべてのファイル(.war)を繰り返し、.warから特定のjarを削除する方法

すべてのファイル(.war)を繰り返し、.warから特定のjarを削除する方法

こんにちは。 .warファイル内のwebappsフォルダにあるすべてのlog4j jarを再帰的に削除する必要があります。 webapps/に10個の.warファイルがあり、.jarファイルがあり、単一のコマンドを使用して.warから.jarを削除する必要があるとします。私は戦争からjarを削除する方法を知っていますが、jarファイルを削除するために10回実行したくありません。

> zip -d <SOME_FILE>.war <log4j>.jar

これにより、10個のwarファイルで実行する必要がある.warから1個のlog4j jarが削除されます。

答え1

forループを使用してください。たとえば、次のようになります。

for f in webapps/*.war; do
  zip -d "$f" log4j.jar
done

関連情報