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

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

Ответить
Настройки темы
CMD/BAT - [решено] bat перемещение из всех вложенных папок в корневую с переименованием

Новый участник


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

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


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

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

Set Otkuda=E:\A\1
Set Kuda=E:\A\

Move /Y "%Otkuda%\*.jpg*" "%Kuda%\" >nul 1>nul 2>nul
FOR /D %%d IN ("%Otkuda%\*.jpg*") DO Move /Y "%%d" "%Kuda%\" >nul 1>nul 2>nul
нужен такой результат:

например
копирую батник в папку "123"
при запуске он пробегает по всем вложенным папкам (один уровень вложенности), ищет в каждой папке файл 11.jpg
переименовываем в название вложенной папки в которой он лежит и после этого перемещаем в корневую папку, в которой батник.

было
123/01/11.jpg
123/02/11.jpg
123/03/11.jpg

результат
123/01.jpg
123/02.jpg
123/03.jpg

Отправлено: 14:52, 13-11-2018

 

Ветеран


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

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


предохранитель - echo
Код: Выделить весь код
@echo off
set "d=C:\123"
set "f=11.jpg"

for /d %%d in ("%d%\*") do for /f "delims=" %%f in ('2^>nul dir /a-d/b/s "%%~d\%f%"') do echo copy "%%f" "%d%\%%~nxd%%~xf"
pause
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:22, 13-11-2018 | #2



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

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


Ветеран


Contributor


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

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


Цитата strel9:
копирую батник в папку "123"
... он пробегает по всем вложенным папкам (один уровень вложенности)»
Код: Выделить весь код
@Echo Off
FOR /D %%d IN (*.*) DO If Exist "%%d\11.jpg" Move "%%d\11.jpg" "%%d.jpg" >nul
Или
Код: Выделить весь код
@Echo Off
	Set "FileName=11.jpg"
	FOR /D %%d IN (*.*) DO Call :MyMove "%%d" "%FileName%"
GoTo :Eof

:MyMove
	If Exist "%~1\%~2" Move "%~1\%~2" "%~1%~x2" >nul
GoTo :Eof
А если не копировать
Код: Выделить весь код
@Echo Off
	Set "BoxIn=Z:\Box_In\123"
	Set "FileName=11.jpg"
	FOR /D %%d IN ("%BoxIn%\*.*") DO Call :MyMove "%%d" "%BoxIn%" "%FileName%"
GoTo :Eof

:MyMove
	If Exist "%~1\%~3" Move "%~1\%~3" "%~2\%~nx1%~x3" >nul
GoTo :Eof

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


Последний раз редактировалось megaloman, 13-11-2018 в 18:15.

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

Отправлено: 17:44, 13-11-2018 | #3


Новый участник


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

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


megaloman, супер, спасибо большое) именно то, что нужно

Отправлено: 18:46, 13-11-2018 | #4



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Помощь с написанием Bat. Перемещение и удаление файлов и папок старше N дней. Stanley5 Скриптовые языки администрирования Windows 20 06-03-2019 05:39
CMD/BAT - Перемещение файлов из нескольких папок в одну. BatizhevNH Скриптовые языки администрирования Windows 4 14-05-2012 19:32
CMD/BAT - Перемещение файлов с переименованием Unm Скриптовые языки администрирования Windows 1 15-10-2011 12:20
CMD/BAT - [решено] Создать список из вложенных папок lohi1234567 Скриптовые языки администрирования Windows 5 06-05-2011 08:40
CMD/BAT - Перемещение нескольких папок из папки E2E2~1 ameds Скриптовые языки администрирования Windows 12 23-06-2010 17:27




 
Переход