У меня настроена такая структура папок:

C:/Scripts
C:/Scripts/Script1
C:/Scripts/Script1/result2
C:/Scripts/Script1/result5
C:/Scripts/Script1/result1
C:/Scripts/Script2
C:/Scripts/Script2/result10
C:/Scripts/Script2/result7
C:/Scripts/Script3
C:/Scripts/Script3/result1
C:/Scripts/Script4

Я хочу создать командный файл, который можно сохранить в каталоге C:/Scripts/, который будет искать в каждой из его подпапок (например, Script1, Script2, Script3 и т. Д.) , и удалите все папки в них (любые файлы внутри), которые начинаются с result (например, result1, result2, result3 и т. д.). Какие-либо предложения?

0
user1625624 11 Окт 2013 в 10:57

1 ответ

Лучший ответ

Попробуйте что-то вроде этого:

@echo off

setlocal EnableDelayedExpansion

for /r "C:\Scripts" %%d in (.) do (
  set "name=%%~nxd"
  if /i "!name:~0,6!"=="result" rd /s /q "%%~d"
)
1
Ansgar Wiechers 11 Окт 2013 в 11:29
Идеально, именно то, что я искал!
 – 
user1625624
11 Окт 2013 в 11:58
На всякий случай, OP знает, что в этой ситуации он может работать нормально, но он также удалит c:\scripts\result, если эта папка когда-либо существует.
 – 
foxidrive
11 Окт 2013 в 14:14