@echo off
@REM 圧縮ツール
@REM ツールのパスを取得
set TOOLPATH=%~dp0
set ZIPPATH=7-Zip
set Ver=7za2107
set ARCPATH=%~dp1
set ARCFOLDER=%~n1
set STR_INPUT=
echo.
set /P STR_INPUT="圧縮形式を選んでください。1(ZIP)、2(ZIP(PASS))、3(7z)、4(7zサイズ分割):"
IF "%STR_INPUT%" == "1" (
goto case1
) ELSE IF "%STR_INPUT%"=="2" (
goto case2
) ELSE IF "%STR_INPUT%"=="3" (
goto case3
) ELSE IF "%STR_INPUT%"=="4" (
goto case4
) ELSE (
goto caseother
)
goto end
:case1
echo.
echo %STR_INPUT%:ZIP形式で圧縮します。
@REM ドラック&ドロップされたファイルをZIP形式で圧縮
"%TOOLPATH%%ZIPPATH%%Ver%7za.exe" a "%ARCPATH%%ARCFOLDER%.zip" %*
goto end
:case2
echo.
echo %STR_INPUT%:ZIP形式(パスワード付き)で圧縮します。
@REM ドラック&ドロップされたファイルをZIP形式(パスワード付き)で圧縮
"%TOOLPATH%%ZIPPATH%%Ver%7za.exe" a -mem=AES256 -p "%ARCPATH%%ARCFOLDER%.zip" %*
goto end
:case3
echo.
echo %STR_INPUT%:7z形式で圧縮します。
@REM ドラック&ドロップされたファイルを7z形式で圧縮
"%TOOLPATH%%ZIPPATH%%Ver%7za.exe" a -t7z "%ARCPATH%%ARCFOLDER%.7z" %*
goto end
:case4
set /P STR_INPUT2="分割サイズをMBで入力してください。(例)メール用 5MB=5、DVD用 4.5G=4480: "
if "%STR_INPUT2%"=="" (
echo.
echo 値がありません。
echo 処理を中止します。
goto end
)
@REM ドラック&ドロップされたファイルを7z形式で圧縮
SETLOCAL enabledelayedexpansion
echo.
echo %STR_INPUT%:7z形式で圧縮して、 !STR_INPUT2!MB で分割します。
set STR_INPUT3=-v!STR_INPUT2!m
"%TOOLPATH%%ZIPPATH%%Ver%7za.exe" a !STR_INPUT3! -t7z "%ARCPATH%%ARCFOLDER%.7z" %*
ENDLOCAL
goto end
:caseother
echo.
echo %STR_INPUT%:処理を中止します。
goto end
:end
echo.
pause
|