Войти

Показать полную графическую версию : Изменить функцию сортировки файлов - сортировка дб по дате создания а не изменения


dark-------13
04-07-2012, 14:43
Здравствуйте,
Есть скрипт "Сортировка jpg по году последнего изменения и перенос файлов в папку по дате изменения", Нужно изменить функцию сортировки файлов - чтобы сортировка была по дате создания а не изменения, как это сделать"


@echo off SETLOCAL EnableDelayedExpansion set $SRC=L:\pics set $DST=L:\pics_2 for /r "%$SRC%" %%a in ("*.jpg") do for /f "tokens=3 delims=./ " %%y in ("%%~ta") do ( if not exist "%$DST%\%%y" md "%$DST%\%%y" if not exist "%$DST%\%%y\%%~nxa" (move "%%a" "%$DST%\%%y\">nul) else (set $n=1 for /f "delims=" %%i in ('dir/b/a-d "%$DST%\%%y\%%~na_*%%~xa"2^>nul') do ( if exist "%$DST%\%%~na_!$n!%%~xa" set/a $n+=1) ren "%%a" "%%~na_!$n!%%~xa"&& move "%%~dpna_!$n!%%~xa" "%$DST%\%%y\">nul ))

RostVY
04-07-2012, 16:41
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/dir.mspx?mfr=true

плопробуйте использовать ключ /tw в комманде DIR

megaloman
04-07-2012, 17:55
RostVY, ключ /tw в комманде DIR приведёт к отображению в команде Dir даты (w-изменения c-создания). Проблема записать время изменения (или создания) в переменную. ИМХО, выражение ("%%~ta") выдаст время изменения файла, если только где-то не присутствует неизвестная мне возможность это изменить.




© OSzone.net 2001-2012