バッチファイルでzip解凍、zip圧縮する方法
ZIP圧縮解凍には7zipを使います。
以下、サイトからコマンドライン版をダウンロードしましょう。
https://sevenzip.osdn.jp/download.html
ダウンロード後任意の場所に解凍します。
とりあえず、d:\7zipに。
今回、圧縮、解凍時にパスワードが必要だったので、
処理時にパスワードを決まったルールに従って生成しています。
ルールといっても、prefixの後に今日の日付なのですが。
ZIP圧縮
if %1=="" exit /b SET prefix="prefix_" SET mmdd=%DATE:~-10,4%%DATE:~-5,2%%DATE:~-2% D:\7zip\7za.exe a -p%prefix%%mmdd% %~n1.zip %*
1行目でバッチファイルにドラッグドロップされたファイルのチェック。
2,3行目でパスワードの生成しています。
日付の取得方法は以下サイトを参照。
http://kuroeveryday.blogspot.jp/2014/02/GetDateTime.html
4行目で7zipにパスワードとファイルを渡してZIP圧縮します。
圧縮ファイル名はドラッグドロップされたファイルの1つ目.zip
ZIP解凍
if %1=="" exit /b SET prefix="prefix_" SET mmdd=%DATE:~-10,4%%DATE:~-5,2%%DATE:~-2% D:\7zip\7za.exe x -p%prefix%%mmdd% %*
1行目でバッチファイルにドラッグドロップされたファイルのチェック。
2,3行目でパスワードの生成しています。
4行目でZIP解凍です。
オプションxはフォルダ構成を維持して解凍
ZIP解凍(パスワード入力)
if %1=="" exit /b set /P INPUT_PWD="パスワードを入力してください: " D:\7zip\7za.exe x -p%INPUT_PWD% %*
パスワードを入力するパターン。
日付が違っていたら解凍できないので。
これらをテキストで保存して、拡張子を.batにして、
デスクトップとかに置く。
Comments are currently closed.