複数のフォルダを Lhaplus で個別に Zip 圧縮する Windows バッチ

昔は Lhasa とか Lhaz とか Lhaca とかあったけど、最近は Lhaplus で事足りる (あと 7-Zip くらい?)。

Lhaplus は複数ファイルを掴んで Lhaplus の圧縮用のショートカットアイコンに投げ込むと、それらをまとめて1つの Zip ファイルにしてくれる。

しかし、掴んだファイルやフォルダたちを個別に Zip 圧縮したい時もあるだろう。

そういうときに、1ファイルずつ圧縮用アイコンにドラッグしたり、コンテストメニューから選んだりするのは面倒だ。

であれば、「繰り返す作業はバッチ処理で自動化する」原則に則り、こんなバッチを作ってみた。

@Echo Off

For %%i In (%*) Do (
  Call :SUB %%i
)
Exit /b

:SUB
"C:\Program Files\Lhaplus\Lhaplus.exe" %1 /c:zip /od
Exit /b

Lhaplus を使うので、Lhaplus がインストールされていること。インストール先ディレクトリに併せてパスは直してほしい。

エクスプローラでフォルダを複数選択し、このバッチファイルにドラッグ & ドロップすれば、フォルダごとに Zip 圧縮してくれる。

ファイル単位でも動作するので、一括圧縮したいときにドウゾ。

Lhaplus のコマンドラインインターフェース

Lhaplus にはコマンドライン引数が用意されている。以下の記事あたりを参考にしながら、とりあえず作れた。