![]() |
Переименование файлов в папке по имени папки_счётчик
Есть большое количество папок с разными именами. Все эти папки содержаться в одной исходной папке. В каждой папке содержатся по несколько файлов с разными именами.
Прошу помощи - нужен батник который будет переименовывать файлы в этих папках по названию папок_счётчик и записывать все эти переименованные файлы вместе с папками в другое место. В то время как исходное место (откуда эти файлы с папками берутся должно остаться неизменным.) У самого никак не получается это реализовать. Зарание спасибо. |
Если правильно понял
Код:
@echo off |
Вот еще вариант (Если правильно понял :) )
Код:
@Echo Off Код:
`Dir "%%p\*.*" /A:-D /B /O:N 2^>nul` Цитата:
|
2All: я лично понял так, что придётся сначала скопировать, а затем уже переименовывать. Тогда исходные файлы останутся неизменными. Впрочем, подождём автора.
|
Большое Спасибо!
Вы даже не представляете как помогли. Скрипт от Foreigner это то что нужно. (только он переименовывает и в исходной папке и в той куда копирует.) И ещё, желательно чтобы в переименованных файлах был после подчёркивания 1 символ (пример papka_1.jpg) и только если файлов больше десяти то начиная с десятого 2 символа (papka_10.jpg) Скрипт от Megaloman тоже работает и переименовывает файлы только в той папке куда копирует, но те ставит разрешения файлов. То есть в исходных папках все файлы, это картинки (.jpg), а переименованные теряют это разрешение, И ещё переименованные файлы не в том порядке получаются, как были в исходной папке. Но это я сам виноват. Как написал в первом посте так и сделали. (никаких уточняющих факторов не написал) Уточняю: В исходных папках файлы могут называться так: document_1.jpg, document_2.jpg и так далее, нумерация по времени создания. (первым создан файл document_1.jpg потом document_2.jpg. и т.д) Переименованные файлы должны быть в той же нумерации. |
Цитата:
Цитата:
Команда Dir, при сортировке по имени, выдает их в таком порядке: Код:
Document_1.jpg |
Цитата:
А можно сделать так чтобы исходное имя файла менялась на название папки, но в конце имени оставалось это пtрвоначально созданное число. (было document_x.jpg, document_y.jpg ..... document_nn.jpg, а стало papka_x.jpg, papka_y.jpg .... papka_nn.jpg) |
Цитата:
Примерно так: Код:
@Echo Off |
Цитата:
Код:
@Echo Off Цитата:
|
Цитата:
Цитата:
megaloman Спасибо вам огромное! Вы даже не представляете как помогли. Ещё одна просьба. Подскажите какую литературу почитать, чтобы хоть чуть чуть начать разбираться в написании скриптов (bat файлов). P.S. Благодарю всех за помощь! Сам бы я год до этого доходил. |
При такой постановке надёжнее выделять номер из имени исходного файла. Вот вариант решения (похоже, не очень элегантный)
Код:
@Echo Off Замечание насчет замены Copy на Move остаётся в силе |
Цитата:
Код:
@Echo Off |
Возможно для кого-то несложно будет написать скрипт создания папок от 01 до 12?
|
Самое простое:
Код:
@echo off |
Время: 06:27. |
Время: 06:27.
© OSzone.net 2001-