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

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Переименование файлов + смена расширения

Ответить
Настройки темы
CMD/BAT - [решено] Переименование файлов + смена расширения

Пользователь


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

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


Добрый день!
Помогите, пожалуйста, с переименованием файлов, а то мой код что-то не работает...
Код: Выделить весь код
for /f "tokens=1,2 usebackq" %i in (`dir/b/a-d "* *.jpg"`) do ren "IMG_%i_%j" "%i - %j"
Имеется группа файлов с телефона, имена вида "VID_20130215_123456.3gp", "IMG_20130215_123456.jpg", которые хотелось бы привести к виду "2013.02.15 - 12.34.56.avi" и "2013.02.15 - 12.34.56.jpg" соответственно.
Перекодировать 3gp в avi не нужно, достаточно только сменить расширение файла.

Отправлено: 14:40, 26-02-2013

 

Ветеран


Contributor


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

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


Код: Выделить весь код
@Echo Off

FOR %%f IN (*.3gp) DO Call :ReFile "%%f" avi 
FOR %%f IN (*.jpg) DO Call :ReFile "%%f" jpg
GoTo :Eof

:ReFile
Set NN=%~n1
Set NN=%NN:~-15%
Set NN=%NN:~0,4%.%NN:~4,2%.%NN:~6,2%-%NN:~9,2%.%NN:~11,2%.%NN:~13,2%.%2
move /Y %1 "%NN%" >nul
или если нужно с пробелами в новом имени, переписать
Код: Выделить весь код
Set NN=%NN:~0,4%.%NN:~4,2%.%NN:~6,2% - %NN:~9,2%.%NN:~11,2%.%NN:~13,2%.%2

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 26-02-2013 в 16:34.

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:23, 26-02-2013 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


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

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


Спасибо!

Отправлено: 17:45, 26-02-2013 | #3


Ветеран


Contributor


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

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


pzh2393, Уточнение! Чтобы батник в папке с файлами можно было запускать многократно с правильным результатом (это актуально для файлов, для которых не меняется расширение) надо аккуратнее написать маску в For
Код: Выделить весь код
FOR %%f IN (IMG*.jpg) DO Call :ReFile "%%f" jpg
Либо, как вариант, переименованные файлы перемещать в другую папку (дописать путь в команде Move).

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

Это сообщение посчитали полезным следующие участники:

Отправлено: 10:09, 27-02-2013 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Переименование файлов + смена расширения

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Смена расширения Ragnazar Скриптовые языки администрирования Windows 61 10-07-2023 15:49
CMD/BAT - [решено] Пакетное переименование файлов (синхронизирование имён одного расширения с другим) 19w85 Скриптовые языки администрирования Windows 13 04-10-2013 22:02
Разное - [решено] Пункт смена расширения в контекстном меню файла Chekis9100a Microsoft Windows 2000/XP 7 06-12-2010 02:03
Интерфейс - Произвольная смена расширения рабочего стола, после выхода с игр artem1982 Microsoft Windows 7 10 25-03-2010 20:23
Расширения файлов badze Microsoft Windows 95/98/Me (архив) 7 10-01-2003 02:13




 
Переход