unzipで複数ファイルを一括解凍

分割zipファイルが大量にあったり、まとめて、あるフォルダ内の大量zipファイルを一気に解凍したい事がありますよね?

*(アスタリスク)使えば出来んじゃね?って、よく

$ unzip *.zip

とか、実行すると、下記のエラーが出ます。

caution: filename not matched: hove.zip

では、どうやるかと言うと、シングルクゥオーテーションで括ればよいです。

$ unzip '*.zip'

ちなみに、解凍するzipファイルが大量にある場合は、xargs使いましょう

$ find . -name '*.zip' | xargs -n1 unzip

zipファイルでは、解凍する際にディレクトリを作成しないファイルも多々存在するため、一括解凍し、解凍先で悲惨な目に合うこともあるので、出力先を指定したほうが良いかもしれません。

$ find . -name '*.zip' | xargs -n1 unzip -d <出力するディレクトリ名>

以上


See also