バッチファイルから
・ファイル/フォルダをZIP圧縮
できます!
※ここで紹介するのは「パスワード無しZIPファイル」の作成(圧縮)方法です。
バッチファイルから
・Power Shellのコマンドレットを実行
することで実現します!
※コマンドレット「Compress-Archive」により実現します。
実行結果も取得できます!
※正常終了の場合、実行結果は「0」になります。
※異常終了の場合、実行結果は「1」になります。
コード
ここでは例として
・デスクトップ配下の約1GBのフォルダ「test」を圧縮し
・デスクトップ配下にファイル「test.zip」として作成
します。
@echo off
rem ZIP形式で圧縮するフォルダ(またはファイル)パスを指定
set targetPath=C:\Users\user\Desktop\test
rem 解凍(展開)先フォルダを指定
set zipFilePath=C:\Users\user\Desktop\test.zip
rem 実行するPowerShellのコマンドレットを組み立て
set psCommand=powershell -NoProfile -ExecutionPolicy Unrestricted Compress-Archive -Path %targetPath% -DestinationPath %zipFilePath% -Force
rem PowerShellのコマンドレットを実行
%psCommand%
rem 実行結果を確認
if %errorlevel% == 0 (
echo 正常終了しました。戻り値:%errorlevel%
) else (
echo 異常終了しました。戻り値:%errorlevel%
)
echo.
pause
exit
実行結果
フォルダをZIP形式で圧縮できました。
※「フォルダ」でなく「ファイル」でも圧縮できます。
サイズが圧縮されていることも確認できました。
※「約1GB」から「約0.17GB(=約170MB)」へ圧縮されました。
参考①
ZIP形式のファイルを解凍(展開)することもできます。
詳細は以下の記事をご確認ください。
参考②
圧縮する前に、圧縮するファイル/フォルダの存在確認をしたほうがよいです。
ファイル/フォルダの存在確認の詳細は、以下の記事をご確認ください。
参考③
上記で使用した以下の詳細は、公式サイトをご確認ください。
●Power Shellのコマンドレット「Compress-Archive」