Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
@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=%~1

if defined sFolderList (
	if exist "%sFolderList%" (
		"%ProgramFiles%\7-Zip\7z.exe" a -ir@%sFolderList% "%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 ==========================================================================
О формате файла-списка, содержащего имена файлов и папок, прочтите в документации:
Код: Выделить весь код
hh.exe "mk:@MSITStore:%ProgramFiles%\7-Zip\7-zip.chm::/cmdline/syntax.htm#ListFile"
Обратите внимание на кодировку файла-списка.
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:42, 10-06-2013 | #2