![]() |
Пакетное переименование файлов(.jpg) в разных папках (BAT)
Смотрите у меня есть папки:
asteklo1, asteklo2, asteklo3, asteklo4... в каждой из них содержится по 2 файла (.jpg) Мне нужен способ (тот же bat), для того чтобы пакетно переименовать все эти файлы (.jpg) -> в название папки и с нижним подчеркиванием с нумерацией файла Пример: папка "asteklo1", в нем должны находится "asteklo1_1" и "asteklo1_2" и так с каждой папкой, кто-то шарит за эту тему? я только создал пакетно все эти папки с разными названиями: for /f %%i in (list.txt) do @md "%%~i" ну естественно и в этом list.txt находились все названия папок строчками |
Zharkyn, код нужен именно на cmd ? Powershell не подойдёт ?
Код:
$dr = 'J:\Download' Проверяете правильность переименования сначала в консоли. Если всё устроит, нужно будет убрать параметр -WhatIf |
CMD
Код:
@Echo Off |
Если папки одноуровневые, то есть находятся в пределах одного каталога, а также заведомо содержат только по два изображения, задача в pwsh вполне решается однострочником вида:
Код:
(Get-ChildItem X:\common\asteklo*\*.jpg).ForEach{$x=++$x-eq2?2:1;Move-Item $_.FullName "$($_.Directory)\$($_.Directory.Name)_$x.jpg"} |
|
Время: 23:35. |
Время: 23:35.
© OSzone.net 2001-