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

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

Ветеран


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

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


Цитата yaoleg2:
Нужно чтобы в названии создаваемого архива, была дата создания этих файлов. »
Если даты создания у файлов разные?

Цитата yaoleg2:
Вот как я узнаю дату создания файлов: »
Вы некорректно узнаёте дату создания файлов. Во-первых, не «файлов», а «файла». Во-вторых, таким вот образом Вы узнаёте дату последней модификации файла, а отнюдь не дату его создания.

Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

set sFile=1.doc

if exist "%sFile%" (
	for /f "usebackq" %%i in (`2^>nul dir /t:c "%sFile%" ^| find.exe /i "%sFile%"`) do set sDate=%%~i
	
	if defined sDate (
		"%ProgramFiles%\7-ZipA\7za.exe" a -t7z -mx9 -i@"filelist.txt" -scsWIN -ssw "backup-!sDate!.7z"
	) else (
		echo Can't determine Date created for file [%sFile%].
	)
) else (
	echo Can't find file [%sFile%].
)

endlocal
exit /b 0
Я бы вообще использовал такое:
читать дальше »
Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

set sFile=1.doc

for %%i in ("%sFile%") do set sFullFileName=%%~fi

if exist "%sFullFileName%" (
	for /f "usebackq" %%i in (`2^>nul wmic.exe DataFile WHERE "Name='%sFullFileName:\=\\%'" get CreationDate /value ^| find.exe /i "CreationDate"`) do set s%%i
	
	if defined sCreationDate (
		"%ProgramFiles%\7-ZipA\7za.exe" a -t7z -mx9 -i@"filelist.txt" -scsWIN -ssw "backup-!sCreationDate:~0,8!.7z"
	) else (
		echo Can't determine Date created for file [%sFullFileName%].
	)
) else (
	echo Can't find file [%sFullFileName%].
)

endlocal
exit /b 0

— в отсортированном по именам списке по формату «YYYYMMDD» удобнее ориентироваться нежели в разбросанном там и сям списке по формату «DD.MM.YYYY».
Это сообщение посчитали полезным следующие участники:

Отправлено: 03:09, 01-09-2013 | #2