インターネットなどでデータを取り込むと圧縮ファイルになっていることが多いですね。
たくさんのファイルを取り込むとひとつづつ特定のフォルダに解凍するのが結構手間です。
面倒くさい作業は自動化してしまうのが一番です。
■自動化するには
自動的に必要なファイルを抽出するにはバッチスクリプトで自動化するか、Windowsのオートパイロットソフトを使います。
バッチを使って圧縮ファイルを操作するためには、そのツールにコマンドラインから
コマンド オプション 対象ファイル……
のように記述して、これを自動実行させます。
複数のファイルを対象にするときには、
for %i in (*.zip) コマンド……
のようにするとカレントフォルダの zip ファイルを解凍したり、ファイルを圧縮したりします。
オートパイロットソフトは以下のソフトが個人的にはオススメ。
UWSC
http://www.uwsc.info/
これで、やりたい Window の操作をスクリプト化します。
ここらへんは
UWSCをバッチ化する方法
http://sarahin.seesaa.net/article/386746377.html
に書いたのでそちらをご参照ください。
以下ではバッチスクリプトで複数のファイルを圧縮する方法をご紹介します。
■圧縮ファイルを操作する
圧縮ファイルの形式で主なものは zip と lzh 形式ですかね。
これらを解凍するソフトは以下のツールが使えます。
zip ファイル
http://sevenzip.sourceforge.jp/download.html
lzh ファイル
http://www.asahi-net.or.jp/~gi8s-tkuc/
基本的に使い方は同様で
(コマンド) (機能) (オプション) (対象ファイル)……
です。
これを環境変数 PATH に書いてあるフォルダに置きます。
間違いがないのは Windows フォルダにおいてしまうことですが、書き込み権限が必要なこともあるので、私の場合は、システムの環境変数の設定で PATH にこれらのファイルが置いてあるフォルダを追加してます。
詳細はそれぞれのホームページにコマンドラインオプションが書いてありますので、それを参照してください。
※相変わらず、不親切…
このブログですべてを説明していると、何ページも使っちゃうので…
■ちょっと言葉じりの疑問
ここまで「解凍」という言葉を使ってきましたが、
「圧縮」の反対は「解凍」か?
といつも思ってしまいます。
「伸長」
ではないかと。
と言っても余り通じないので、疑問には思いながらそのまま使ってます。