PowerShellでZipアーカイブをバッチ解凍

ファイル圧縮形式といえば近頃もっぱらzipです。
データを送ってもらったら時間ごとに大量のzipアーカイブファイルに固められていた、なんてケースは珍しくありません(私だけ?)。

二つ以上、解凍しないといけないzipファイルがあったらもう自動化しないとやってられませんね。フリーソフトを使ってもいいのですが、Windowsの標準機能でも十分な場合もあります。
ということでPowershellでバッチ化してしまいましょう。

この例では、指定されたディレクトリ($basedir)以下のzipファイルを再帰的に検索し、Windows標準の機能で解凍(Expand-Archive)しています。
解凍先として、アーカイブファイル名と同じディレクトリを新規に作成しています。

この方法の弱点のひとつは、パスワード保護付きのzipアーカイブを解凍できない、ということ。
その場合は7zとかサードパーティの実行ファイルをCLIで呼ぶ方法で対応できますが、それはまた今度。