|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - переименовать файлы из списка txt |
|
CMD/BAT - переименовать файлы из списка txt
|
Пользователь Сообщения: 102 |
Профиль | Отправить PM | Цитировать
Добрый день ,
помогите пожалуйста со скриптом у меня есть много файлов в одной папке , пример P_684449914FM.JPG P_684449914TM.JPG P_684449914D1.JPG P_684449914D2.JPG и есть txt со следующим содержанием текста 6844499-14-44 6844499-14-42 6844499-14-40 6844499-14-38 6844499-14-36 6844499-14-34 и нужно чтобы этих 4-ре файла переименовались в : 6844499-14-34_1.JPG 6844499-14-34_2.JPG 6844499-14-34_3.JPG 6844499-14-34_4.JPG или 6844499-14-44_1.JPG 6844499-14-44_2.JPG 6844499-14-44_3.JPG 6844499-14-44_4.JPG не имеет значения какие будут предпоследние 2-ве цифры. желательно чтобы P_684449914FM.JPG был 6844499-14-34_1.JPG P_684449914TM.JPG был 6844499-14-34_2.JPG но в txt могут быть такие записи 8834156-12-L 8834156-12-M 8834156-12-S 8834156-12-XL 8834156-12-XS и естественно 8834156-12-L_1.JPG 8834156-12-L_2.JPG 8834156-12-L_3.JPG 8834156-12-L_4.JPG |
|
Отправлено: 16:19, 14-11-2018 |
Ветеран Сообщения: 5380
|
Профиль | Отправить PM | Цитировать lovator,
Немого не в тему по способу реализации, но по цели подойдет, думаю. Попробуйте утилиту и соответствующую функцию How to rename files using a list of new names in Excel file |
------- Отправлено: 16:44, 14-11-2018 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 2708
|
Профиль | Отправить PM | Цитировать lovator,
@Echo Off Set "BoxIn=Z:\Box_In\Фигейрос" Set "Mask=*_%%i%%j*.jpg" Set "Txt=Z:\Box_In\Фигейрос\и есть txt.txt" FOR /F "usebackq tokens=1,2,3 delims=- " %%i IN ("%Txt%") DO ( Call Set /A N=0 If Exist "%BoxIn%\%Mask%" FOR %%f IN ("%BoxIn%\%Mask%") DO Call :MyRen "%%f" "%%i" "%%j" "%%k" ) GoTo :Eof :MyRen Set /A N+=1 If Exist "%~dp1%~2-%~3-%~4_%N%%~x1" GoTo :MyRen Ren %1 "%~2-%~3-%~4_%N%%~x1" GoTo :Eof Цитата lovator:
|
|
------- Последний раз редактировалось megaloman, 14-11-2018 в 21:40. Отправлено: 20:32, 14-11-2018 | #3 |
Ветеран Сообщения: 3806
|
Профиль | Отправить PM | Цитировать lovator, берем первую (или последнюю) строку из txt, а все jpg переименовываем по принципу эта строка файла + счётчик?
|
Отправлено: 21:17, 14-11-2018 | #4 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать |
|
Отправлено: 16:38, 15-11-2018 | #5 |
Ветеран Сообщения: 2708
|
Профиль | Отправить PM | Цитировать alpap,
Вопросы...
Ваш батник: (пути допустимые?)
Вот содержимое папки
Содержимое папки Z:\Box_In\Фигейрос
15.11.2018 19:50 0 aaa 15.11.2018 19:47 19 P_684449914D1.JPG 15.11.2018 19:47 19 P_684449914D2.JPG 15.11.2018 19:47 19 P_684449914FM.JPG 15.11.2018 19:47 19 P_684449914TM.JPG 15.11.2018 19:47 19 P_684449915D1.JPG 15.11.2018 19:47 19 P_684449915D2.JPG 15.11.2018 19:47 19 P_684449915FM.JPG 15.11.2018 19:47 19 P_684449915TM.JPG 15.11.2018 19:47 19 Q_883415612Lu.JPG 15.11.2018 19:47 19 Q_883415612Mu.JPG 15.11.2018 19:47 19 Q_883415612Su.JPG 15.11.2018 19:47 19 Q_883415612XL.JPG 15.11.2018 19:47 19 Q_883415612XS.JPG 15.11.2018 19:47 19 Q_883415613Lu.JPG 15.11.2018 19:47 19 Q_883415613Mu.JPG 15.11.2018 19:47 19 Q_883415613Su.JPG 15.11.2018 19:47 19 Q_883415613XL.JPG 15.11.2018 19:47 19 Q_883415613XS.JPG 15.11.2018 19:46 164 и есть txt.txt 14.11.2018 22:51 780 я.bat Содержимое текстового файла
Отработал Ваш батник
Содержимое папки Z:\Box_In\Фигейрос 15.11.2018 19:54 19 6844499-14-44_1.JPG 15.11.2018 19:54 19 6844499-14-44_10.JPG 15.11.2018 19:54 19 6844499-14-44_11.JPG 15.11.2018 19:54 19 6844499-14-44_12.JPG 15.11.2018 19:54 19 6844499-14-44_13.JPG 15.11.2018 19:54 19 6844499-14-44_14.JPG 15.11.2018 19:54 19 6844499-14-44_15.JPG 15.11.2018 19:54 19 6844499-14-44_16.JPG 15.11.2018 19:54 19 6844499-14-44_17.JPG 15.11.2018 19:54 19 6844499-14-44_18.JPG 15.11.2018 19:54 19 6844499-14-44_2.JPG 15.11.2018 19:54 19 6844499-14-44_3.JPG 15.11.2018 19:54 19 6844499-14-44_4.JPG 15.11.2018 19:54 19 6844499-14-44_5.JPG 15.11.2018 19:54 19 6844499-14-44_6.JPG 15.11.2018 19:54 19 6844499-14-44_7.JPG 15.11.2018 19:54 19 6844499-14-44_8.JPG 15.11.2018 19:54 19 6844499-14-44_9.JPG 15.11.2018 19:55 0 aaa 15.11.2018 19:52 162 и есть txt.txt 14.11.2018 22:51 780 я.bat Отработал мой батник
Содержимое папки Z:\Box_In\Фигейрос 15.11.2018 19:56 19 6844499-14-44_1.JPG 15.11.2018 19:56 19 6844499-14-44_2.JPG 15.11.2018 19:56 19 6844499-14-44_3.JPG 15.11.2018 19:56 19 6844499-14-44_4.JPG 15.11.2018 19:56 19 8834156-12-Lui_1.JPG 15.11.2018 19:56 19 8834156-12-Lui_2.JPG 15.11.2018 19:56 19 8834156-12-Lui_3.JPG 15.11.2018 19:56 19 8834156-12-Lui_4.JPG 15.11.2018 19:56 19 8834156-12-Lui_5.JPG 15.11.2018 19:57 0 aaa 15.11.2018 19:56 19 P_684449915D1.JPG 15.11.2018 19:56 19 P_684449915D2.JPG 15.11.2018 19:56 19 P_684449915FM.JPG 15.11.2018 19:56 19 P_684449915TM.JPG 15.11.2018 19:56 19 Q_883415613Lu.JPG 15.11.2018 19:56 19 Q_883415613Mu.JPG 15.11.2018 19:56 19 Q_883415613Su.JPG 15.11.2018 19:56 19 Q_883415613XL.JPG 15.11.2018 19:56 19 Q_883415613XS.JPG 15.11.2018 19:52 162 и есть txt.txt 14.11.2018 22:51 780 я.bat Для создания тестовых файлов использовал батник я.bat -буду рад, если пригодится
>P_684449914FM.JPG Echo P_684449914FM.JPG >P_684449914TM.JPG Echo P_684449914TM.JPG >P_684449914D1.JPG Echo P_684449914D1.JPG >P_684449914D2.JPG Echo P_684449914D2.JPG >P_684449915FM.JPG Echo P_684449915FM.JPG >P_684449915TM.JPG Echo P_684449915TM.JPG >P_684449915D1.JPG Echo P_684449915D1.JPG >P_684449915D2.JPG Echo P_684449915D2.JPG >Q_883415612Lu.JPG Echo Q_883415612Lu.JPG >Q_883415612Mu.JPG Echo Q_883415612Mu.JPG >Q_883415612Su.JPG Echo Q_883415612Su.JPG >Q_883415612XL.JPG Echo Q_883415612XL.JPG >Q_883415612XS.JPG Echo Q_883415612XS.JPG >Q_883415613Lu.JPG Echo Q_883415613Lu.JPG >Q_883415613Mu.JPG Echo Q_883415613Mu.JPG >Q_883415613Su.JPG Echo Q_883415613Su.JPG >Q_883415613XL.JPG Echo Q_883415613XL.JPG >Q_883415613XS.JPG Echo Q_883415613XS.JPG |
------- Последний раз редактировалось megaloman, 15-11-2018 в 20:06. Отправлено: 19:59, 15-11-2018 | #6 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать megaloman,
8834156-12-L ... предполагал что в другом txt (значит невнимательно прочитал), иначе, но если это важно (посмотрим что ТС скажет) конечно, то в моем коде такое конечно не учитывалось и под такой txt надо дорабатывать (переделывать). |
Отправлено: 23:22, 15-11-2018 | #7 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать переделал
@echo off set "d=C:\papka" set "f=file.txt" for /f "usebackq tokens=1-3 delims=-" %%a in ("%f%") do set "$_%%a-%%b=%%a-%%b-%%c" for /f "tokens=3-5 delims==-" %%i in ('set $_') do ( for /f "tokens=1* delims=[]" %%a in ('dir /a-d/b "%d%\*%%i%%j*.jpg"^|find /n /v ""') do ren "%d%\%%b" "%%i-%%j-%%k_%%a%%~xb" ) pause |
Отправлено: 23:59, 15-11-2018 | #8 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] Переименовать jpg файлы, взяв имя из первой строки соответствующего одноименного txt | use809 | Скриптовые языки администрирования Windows | 3 | 07-03-2017 16:10 | |
CMD/BAT - Переименование файлов из списка *.txt | IntuitOS | Скриптовые языки администрирования Windows | 12 | 30-03-2013 10:36 | |
CMD/BAT - выполнение команд из списка в txt файле | systemroot | Скриптовые языки администрирования Windows | 2 | 12-02-2011 17:49 | |
CMD/BAT - [решено] Создание файлов из списка в txt | kasik | Скриптовые языки администрирования Windows | 1 | 15-01-2011 20:04 | |
Удаление файлов из списка указанного в txt | blacks2 | Вебмастеру | 28 | 02-09-2009 20:09 |
|