GettingSignals

バッチファイルでzip解凍、zip圧縮する方法

2016年2月19日
Posted by hina

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にして、
デスクトップとかに置く。

Share

Comments are currently closed.

Follow

カレンダー

2024年12月
 1
2345678
9101112131415
16171819202122
23242526272829
3031