Я пытаюсь создать пакетный файл (.bat), который будет переименовывать любые файлы в папке, чтобы удалить все, кроме первых 6 чисел.Файлы будут в формате PDF, но переименование всех файлов в папке - это нормально.Примером имени файла будет 123456-AmortizedLoanStatement-123456-094644982.pdf.Я бы хотел, чтобы он был 123456.pdf
Я нашел похожий пост по этому вопросу, но не смог заставить этот код работать: автоматическое переименование командного файла
Спасибо, ребята!
Может быть, это все, что вам нужно:
Ren "C:\path to\a folder\??????-*.pdf" "??????.pdf"
(предполагается, что у вас нет нескольких файлов, начинающихся с одинаковых шести символов)
Партия Magoo идеально подходит для вашей задачи, вам просто нужно изменить разделитель с _ на - в двух местах и выбрать расширение.
_
-
@ECHO OFF SETLOCAL SET "sourcedir=." FOR %%a IN ("%sourcedir%\*-*.pdf") DO ( FOR /f "tokens=1*delims=-" %%b IN ("%%a") DO IF NOT "%%c"=="" ( ECHO(REN "%%a" %%~nb%%~xa ) ) GOTO :EOF
Это было не сложно найти.