Script em lote para excluir pastas específicas

4

Eu quero poder executar um script em uma pasta pai que contenha outras pastas, o script excluirá todas as pastas de um determinado nome.

Por exemplo, para remover todas as pastas bin e apenas elas: \parent\a\bin , \parent\a\subfolder\bin , \parent\b\bin .

Encontrei um script semelhante aqui, mas parece que não funciona:

for /d /r %%i in (bin) do @rmdir /s %%i

Provavelmente, precisamos primeiro esvaziar a pasta bin e depois removê-la. Como isso pode ser feito?

    
por shinzou 02.04.2016 / 19:56

1 resposta

3

O script excluirá todas as pastas de um determinado nome

Você não precisa esvaziar o diretório, pois a rd option /s fará isso para você.

Use o seguinte arquivo em lotes:

@echo off
setlocal enabledelayedexpansion
rem find directories called bin
for /f "usebackq tokens=*" %%i in ('dir /b /s /a:d bin') do (
  rem delete the directories and any files or subdirectories
  rd /s /q "%%i"
  )
endlocal

Leitura Adicional

por 02.04.2016 / 21:40