CMD/BAT - Переименование файлов по дате и времени

Ответить
Аватара пользователя
NLOLegion

CMD/BAT - Переименование файлов по дате и времени

Сообщение NLOLegion »

Доброго дня! Знаю, подобных тем и вопросов поднималось множество, но подходящее решение найти не смог, если оно есть - рад буду ссылке. Из того что имеется собрать необходимый рабочий способ у меня не получается.

У меня имеется множество фото и видео различный форматов, да и вообще файлов. Надоело годами их переименовывать вручную прописывая имена каждому файлу. Их нужно переименовать в дату их НАСТОЯЩЕЕГО создания(для многих это дата изменения, возможно) с временем по формату 20190623_094328 , т.е. ггггммдд_ччммсс

Если секунды получить не возможно, то заполнять их по порядку начиная с 01 и т. п. типо 02,03 и т.д.

В идеале иметь сохраненный скрипт типа .BAT (если это возможно) на который будет переноситься папка(каталог) мышью и в этой папке будет происходить изменение всех имеющихся файлов.
Аватара пользователя
Vanadiy777

Re: CMD/BAT - Переименование файлов по дате и времени

Сообщение Vanadiy777 »

NLOLegion, а программа
Advanced Renamer
не подойдет Вам для этих задач?

Она, вроде, умеет это все делать.
Аватара пользователя
Vanadiy777

Re: CMD/BAT - Переименование файлов по дате и времени

Сообщение Vanadiy777 »

Vanadiy777, может быть, но иметь скрипт на рабочем столе на который мышью кинуть папку будет удобнее. На этом форуме был подобный метод с формированием папок по дате - использую его активно. Теперь вот сами файлы надо переименовать. И отсутствие программы будет более удобно. При условии, что кто-то мне поможет...
Аватара пользователя
megaloman

Re: CMD/BAT - Переименование файлов по дате и времени

Сообщение megaloman »

Цитата NLOLegion:



иметь скрипт на рабочем столе на который мышью кинуть папку будет удобнее
CMD/BAT - Переименование файлов по дате и времени






Код:

Код: Выделить всё

@Echo Off
cls
	Set "Mask=*.*"
	If "%~1"=="" (Echo !!! The Folder name is missing in the bat-file Argument !!! &Pause &Exit /B 1)
	Pushd "%~1" || (Echo !!! Folder "%~1" Not Found!!! &Pause &Exit /B 2)
	Popd
	Set "BoxIn=%~1"
	If "%BoxIn:~-1%"=="\" Set "BoxIn=%BoxIn:~0,-1%
	FOR /F "usebackq tokens=2,3,4,5,6,7* delims=:. " %%i In (`Where /T "%BoxIn%":"%Mask%" ^|FindStr /V /R "\\20[0-9][0-9][0-1][0-9][0-3][0-9]_[0-2][0-9][0-5][0-9][0-5][0-9]_"`) DO (
		Ren "%%o" "%%k%%j%%i_%%l%%m%%n_%%~nxo"
	)
Pause
Exit /B
Ответить

Вернуться в «Скриптовые языки администрирования Windows»