@echo off
REM ===================================
REM Fichier : zipper_fichier_extension_dans_son_zip.bat
REM Desc : zippe chaque fichier d'une extension donnée vers son fichier .zip propre (fichier externe : 7z.exe)
REM ===================================
if "%1"=="/?" goto syntax
if "%1"=="-?" goto syntax
if "%1"=="?" goto syntax
if "%1"=="-help" goto syntax
if "%1"=="--help" goto syntax
echo ***************************************************************************
echo ATTENTION : ne fonctionne pas sur des noms de fichiers avec espaces/accents
echo ***************************************************************************
echo Fichiers d'extension %1 dans le dossier courant :
for /f %%i in ('dir *.%1 /b /on /a-d') do @call :suite %%i
goto fin
pause
:suite
REM Ligne pour zipper en enlevant l'extension (test.bat est zippé en test.zip)
REM for /f %%j in ('echo %1') do 7z a %%~nj.zip %%~nj%%~xj
REM Ligne pour zipper en gardant l'extension (test.bat est zippé en test.bat.zip)
REM for /f %%j in ('echo %1') do 7z a %%~nj%%~xj.zip %%~nj%%~xj
for /f %%j in ('echo %1') do 7z a %%~nj%%~xj.zip %%~nj%%~xj
goto fin
:syntax
echo ------------------------------------------------------------
echo Passer une extension de fichier en parametre
echo Pour zipper tous les fichiers du dossier courant, passer * en parametre.
echo ------------------------------------------------------------
goto fin
:fin