For %%a in (*.jpg) Do (
- говорит, получить список каталогов каждого файла с расширением jpg
и дать мне текущее имя в переменной %%a
и сделать что-то (что следует в скобках). Я не уверен, откуда будет Access Denied
, возможно, вам не хватает прав файловой системы для переименования одного или нескольких файлов.
Реальное усилие этой команды исходит от enabledelayedexpansion
который позволяет переменной заменить синтаксис.
Ren "%%a" "!File:%Pattern%=%Replace%!"
- Часть переименования может быть упрощена до ren this that
... хитрость в том, что второй блок с восклицательными знаками ... запускает замену переменных.
"!File:%Pattern%=%Replace%!"
- для переменной File
(задайте в строке выше полный путь и имя файла текущего файла в цикле for
- что необязательно в этом списке каталогов) замените все вхождения Pattern
на Replace
. Pattern
строке 5 для шаблона задано переименование, а для повторного использования в строке 6 задано Replace
поэтому эта команда говорит: в указанном имени файла замените все вхождения строки переименовывать на повторное использование .
Чтобы скомпилировать все это:
Для всех файлов с расширением jpg
в текущем каталоге
Переименуйте файл, чтобы все вхождения строки rename
теперь для reuse
for /f
для чтения текстового содержимого одного или нескольких файлов построчно - так что нет, это вам здесь не поможет.
Откуда этот nul
?