Это может быть сделано, например, с следующим периодическим кодом:
@echo off
setlocal EnableExtensions EnableDelayedExpansion
for %%I in ("C:\Temp\*.text") do (
set "FileName=%%~nI"
if /I not "!FileName:~0,4!" == "RAW_" ren "%%~I" "RAW_%%~nxI"
)
endlocal
Если строка присваивается переменной окружения в блоке кода, начиная с (
и заканчивающийся с соответствующим )
и ссылающегося на строку или части строки этой переменной среды в том же кодовом блоке, что и для этой операции переименования, необходимо использовать задержанное расширение, как показано выше. Помощь команды set
объясняет это на простой IF и простой пример FOR очень прост.
Чтобы понять используемые команды и как они работают, откройте окно командной строки, выполните там следующие команды и внимательно прочитайте все страницы справки, отображаемые для каждой команды.
echo /?
endlocal /?
for /?
if /?
ren /?
set /?
setlocal /?
Существует аналогичный вопрос, который может вам помочь: http://superuser.com/questions/699711/rename-multiple-files-exclude-pattern – Freddy
StackOverflow не является бесплатной службой написания кода, поэтому вам нужно показать ваши собственные усилия, если вы ожидаете помощи. Пожалуйста, наклоните [как спросить] (http://stackoverflow.com/help/how-to-ask)! – aschipfl
Обратите внимание: https://stackoverflow.com не является бесплатной службой написания сценариев/кодов. Если вы сообщите нам, что вы пробовали до сих пор (включая скрипты/код, который вы уже используете), и где вы застряли, мы можем попытаться помочь с конкретными проблемами. Вы также должны прочитать [Как задать хороший вопрос?] (Https://stackoverflow.com/help/how-to-ask). – DavidPostill