圧縮ツールを変えてみた件

“7zipって圧縮最強!”という話を聞いたので、使ってみた。

GUIで操作するなら、

に行けば32bitバージョンもX64バージョンもあるので、すぐに使用できる。右クリック出表示されるコンテキストメニューにも7-Zip向けメニューが表示されるようになるので、便利かもしれない。

それではさすがにつまらんので、今回はコマンドライン版を試してみる。

コマンドライン版は「Download」ページに行くと、.zipアーカイブで置いてあるので、これを落としてくる。

実行ファイル本体とヘルプファイルとライセンステキストとかリードミーテキストとかが含まれているので、とりあえず本体(7za.exe)をパスの通ったディレクトリ(ここではC:\BIN)に放り込む。

コマンドラインの詳細はヘルプファイルを参照してもらうとして、とりあえず、デフォルトの*.7zファイルを作るには、

> 7za a -t7z FILE.7z subdir\

*.zipファイルを作るには、

> 7za a FILE.zip subdir\

なんて感じ。もちろん「subdir\」はファイル単体でもかまわない。たとえば、uhauha.jpgとか。

*.7z形式で圧縮しちゃうと、展開のために7za.exe(あるいは7z.exe)が必要になるので、可用性が低くなる。そのため、使用するときは*.zip形式か、自己展開形式(*.exeか*.msi)にしたいところ。

自己展開形式にするには、7-zip.orgの「Download」ページに行き、*.7z形式で保存されている「7z Library, SFXs for installers, Plugin for FAR Manager」であるところのアーカイブ(7z<バージョン番号>_extra.7z)をダウンロードする。ダウンロードしたら任意のディレクトリで展開。

> 7za e 7z457_extra.7z

展開したら、取り急ぎ*.exe形式にしたいので、「7zS.sfx」を「7zCon.sfx」に名前を変えて「7zSD.sfx」と一緒にパスの通ったディレクトリにコピーする(まあ、7za.exeと一緒にしとくのが吉)。

コピーしたらコマンドラインで、

> 7za a -sfx7zcon.sfx FILE.exe subdir\

とすればOK。

で、実際に最強っぷりを試すべく、テキストとEPSファイルをごっそり放り込んだディレクトリ「works」を圧縮してみた結果が以下。

works(オリジナル)works.zip(デフォルトWindows zip)works.exe(7zip自己解凍型)works.7z(7zip)
1.28GB329MB278MB278MB

おぉ。なるほど“こりゃすごい”の結果に。これで微妙にメールサーバーに嫌われていたファイルも、堂々と添付して送りつけることができそうなので、シアワセ。

気になった方は、お試しくだされ。