@echo off
setlocal enableextensions enabledelayedexpansion
call :GetDateTime
set sFileName=%DateTime:~0,4%_%DateTime:~4,2%_%DateTime:~6,2%#%DateTime:~8,2%_%DateTime:~10,2%.zip
set sFolderList="e:\123\Listfile.txt"
if defined sFolderList (
if exist "%sFolderList%" (
"%ProgramFiles%\7-Zip\7z.exe" a -i@%sFolderList% -scsWIN "%sFileName%"
) else (
echo Can't find folder list file [%sFolderList%].
)
) else (
echo Usage: %~nx0 ^<Folder list^>
)
endlocal
exit /b 0
rem ==========================================================================
rem Функция GetDateTime()
rem
rem Серый форум / CMD/BAT: получение формата дата-время для имени файла
rem (
http://forum.script-coding.com/viewtopic.php?id=5066)
rem ==========================================================================
:GetDateTime
setlocal enableextensions enabledelayedexpansion
set sProcName=%~0
for /f "delims=." %%i in ('wmic.exe OS get LocalDateTime ^| find "."') do set sDateTime=%%i
endlocal & set %sProcName:~4%=%sDateTime:~0,14%
exit /b 0
rem ==========================================================================