Доброго дня, подскажите:
Есть структура папок: 2016-бла1, бла2, бла3 - ААА, БББ
В каждой из директорий есть файлы типа:
Б010101 интересно.doc
Б010201 очень интересно.doc
Б010302 не очень интересно.doc
Мне надо создать в вышестоящих директориях бла1, бла 2, бла3 ПАПКИ с именами файлов. И туда положить эти папки.
Что я нашел, написал, нагуглил:
@echo off
echo "Переименовали файлы:" > C:\log.log
FOR /R "C:\БУА" %%G in (.) DO (
Pushd %%G
for %%A IN (*.doc) DO (
for /f "tokens=1* delims= " %%B IN ("%%~nA") DO (
echo Было:"%%~A" Стало:"%%~B" Путь "%%G"
set z=%%G
set str2=%z:~-4%
echo %DATE%-%TIME% Было: "%%~A" Стало: "%%~B" Путь: "%%G" Часть пути: %z% >> C:\log.log
If Not Exist "..\%%~B" Md "..\%%~B" >nul 2>&1
IF Not Exist "..\%%~B\%%A" ( xcopy /y "%%A" "..\%%~B\" ) ELSE (
@rem for %%i in ( "%%G" ) do ( set name="%%~nxi" )
@rem echo ПОЧЕМУ %name%
@rem ren "..\%%~B\%%A" "..\%%~B\%%A%name%"
@rem xcopy /y "%%A" "..\%%~B\"
)
)
)
Popd
)
pause
В участке кода где написано ИНАЧЕ, я смотрю, файлы бывает совпадают полностью по именам из бла1 и бла2, мне надо добавить к имени файла имя родительской директории, чтоб стало Б010101 интересно_БЛА1.doc и Б010101 интересно_БЛА2.doc
Тогда не нужен будет условный оператор.
Подскажите - как мне это сделать??