Переименовать файлы1 в файл А во всех подпапках - PullRequest
0 голосов
/ 12 июня 2018

Всякий раз, когда мне что-то нужно, я прихожу сюда, и в этот момент мне нужно что-то, что я нашел здесь, но хотел больше в этом коде:

@echo off
setlocal enableDelayedExpansion
for %%F in (*.txt) do (
  set "name=%%F"
  ren "!name!" "!name:file1=fileA!"
  ren "!name!" "!name:file2=fileB!"
)

Мой вопрос: как переименовать файлы 1 и файл 2 вэту папку и подпапки и напишите в конце сообщение «Переименовать: 2 файла»

Спасибо за помощь.

1 Ответ

0 голосов
/ 12 июня 2018

, чтобы сделать его рекурсивным (обработка подпапок), добавьте переключатель /R.
Используйте переменную для создания нового имени файла и выполните команду ren только один раз для файла.

@echo off
setlocal enableDelayedExpansion
set count=0
for /R %%F in (*.txt) do (
  set "newname=%%~nxF"
  set "newname=!newname:file1=fileA!"
  set "newname=!newname:file2=fileB!"
  ren "%%F" "!newname!"
  set /a count+=1
)
echo %count% files renamed
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...