в цикле перебираются все папки, которые поочередно копируются и сразу удаляются
Цитата Tosyk:
хотел использовать именно move »
|
тогда только пофайлово:
Код:
@echo off
SETLOCAL EnableDelayedExpansion
for /f "delims=" %%d in ('dir /b/s/ad "Material3.*"') do if "%%~xd"=="" (
for /f "delims=" %%f in ('dir /b/s/a-d "%%d"') do (
set "$d=%%~dpf"& set "$d=!$d:%%~dpd=%%~dpd..\..\!"
if not exist "!$d!" md "!$d!"
if exist "!$d!" move "%%f" "!$d!"
))
- исходные папки после перемещения файлов не удаляются;
- операция одноразовая, скрипт поднимает на два уровня каждую папку Material3, 2-й запуск поднимет также и целевую папку, т.к. у них одинаковые имена