1

Я делаю инструмент очистки, который будет удалять и переименовывать некоторые указанные каталоги и файлы. Я могу по отдельности переименовывать и удалять каталоги и файлы, но я не могу переименовывать более одной папки и не могу переименовывать файлы в подкаталогах. Вот мой сценарий:

if not exist Plugin mkdir Plugin
RENAME "xml" "XML"

RENAME "x64\bin.exe" "x64\bin_x64.exe"
RENAME "x64" "64bit"

RENAME "x86\bin.exe" "x86\bin_x86.exe"
RENAME "x86" "32bit"

rmdir Licenses /s /q
del bin_old.exe
del bin.exe.bak
del README.md
del license.txt
del components.xml
del InstallationLog.txt
del maintenancetool.dat
del maintenancetool.exe
del maintenancetool.ini
del maintenancetool.zip
del network.xml

Как вы можете видеть, я хочу переименовать 32- битный исполняемый файл в каталоге x86 в bin_x86.exe , затем переименовать его, содержащий папку с x86 на 32bit -битную, а затем тот же эквивалент для 64- битного двоичного файла и каталога. В настоящее время мой скрипт может успешно переименовать первую определенную папку (но не двоичную) , а не вторую или двоичную папку.

1 ответ1

1

Команда RENAME не может работать в подкаталогах, так что простое решение будет cd в директорию внутри пакетного сценария до переименования файлов.

cd x64
RENAME "bin.exe" "bin_x64.exe"
cd ..
RENAME "x64" "64bit"
cd x86
RENAME "bin.exe" "bin_x86.exe"
cd ..
RENAME "x86" "32bit"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .