LukAleX
31-07-2016, 18:42
Здравствуйте, помогите пожалуйста.
Столкнулся с проблемой. Есть папка в неё сыплются файлы, очень много файлов, с именами вида
PA-1312.PDF
бла-бла-блаPA-1513.PDF
PA-6734тыц-тыц-тыц.PDF
PA-6734тру-ля-ля.PDF
ля-ля-ляPA-5617ля-ля-ля.PDF
то есть в имени есть неизменная часть "PA-" и следующие за ней случайные 4 символа (вся проблема в этих символах).
Задача состоит в том что нужно переименовать все файлы удалив из имени все символы до и после PA-XXXX если они есть.
А если в папке уже есть файл с таким же именем, добавить к имени счетчик.
PA-1312.PDF
PA-1513.PDF
PA-6734.PDF
PA-6734 1.PDF
PA-5617.PDF
Заранее ОГРОМНОЕ СПАСИБО за помощь.
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFolder=D:\Otchet
2>nul pushd "%sSourceFolder%" && (
for /f "usebackq delims=" %%i in (
`2^>nul dir /b /a:-d`
) do (
set sVar=%%~i
ren "%%~i" "!sVar:*PA-=!"
)
popd
) || (
echo Can't find source folder [%sSourceFolder%]
exit /b 1
)
endlocal
exit /b 0
Столкнулся с проблемой. Есть папка в неё сыплются файлы, очень много файлов, с именами вида
PA-1312.PDF
бла-бла-блаPA-1513.PDF
PA-6734тыц-тыц-тыц.PDF
PA-6734тру-ля-ля.PDF
ля-ля-ляPA-5617ля-ля-ля.PDF
то есть в имени есть неизменная часть "PA-" и следующие за ней случайные 4 символа (вся проблема в этих символах).
Задача состоит в том что нужно переименовать все файлы удалив из имени все символы до и после PA-XXXX если они есть.
А если в папке уже есть файл с таким же именем, добавить к имени счетчик.
PA-1312.PDF
PA-1513.PDF
PA-6734.PDF
PA-6734 1.PDF
PA-5617.PDF
Заранее ОГРОМНОЕ СПАСИБО за помощь.
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFolder=D:\Otchet
2>nul pushd "%sSourceFolder%" && (
for /f "usebackq delims=" %%i in (
`2^>nul dir /b /a:-d`
) do (
set sVar=%%~i
ren "%%~i" "!sVar:*PA-=!"
)
popd
) || (
echo Can't find source folder [%sSourceFolder%]
exit /b 1
)
endlocal
exit /b 0