Windows 7 - apaga todos os arquivos + pastas vazias com extensão específica recursivamente

4

Eu tentei seguir o conselho aqui: Necessidade de excluir todos os arquivos com uma extensão em uma unidade no Windows 7

Mas se eu quiser excluir todos os arquivos em uma pasta específica, com uma extensão específica, isso não funcionará.

Eu tenho uma pasta com arquivos *.ASP e *.ASPX , e preciso excluir todos os arquivos *.ASP , mas manter as páginas ASPX.

Eu também preciso excluir uma pasta se ela estiver vazia, depois de excluir o (s) arquivo (s).

Como eu excluiria todas as páginas ASP facilmente, incluindo pastas vazias? Prompt de comando não é problema.

EDIT: Este é o truque no PowerShell:

Get-ChildItem -path . -recurse -include *.asp | 
  Where-Object {-not $_.PSIsContainer} |
  Remove-Item -Verbose
    
por Lars Holdgaard 03.02.2014 / 10:24

2 respostas

5

Para remover todos os arquivos com uma extensão específica, faça o seguinte:

cd C:\ path\to\directory\extension del /s *.extension

Para remover pastas vazias, sugiro olhar para uma pergunta do stackoverflow:

link

EDIT: Obviamente, sugiro cautela executando este tipo de comando em uma unidade inteira. Pode haver algo que você precisa. Portanto, tenha cuidado.

    
por 03.02.2014 / 10:29
0

Aqui está a maneira de fazer isso com TCC / LE da JP Software :

del /s /x *.asp

A opção /s causa recursão em subdiretórios, e a opção /x faz com que diretórios esvaziados sejam removidos.

O TCC não corresponderá a nomes de arquivo curtos com o caractere curinga *.asp . Esse tipo de correspondência de curinga é um recurso não padrão que precisa ser ativado. O caractere curinga apenas corresponderá a nomes extensos de arquivos, portanto, o problema causado por *.aspx arquivos que possuem *.asp nomes de arquivos curtos não ocorrerá.

Leitura adicional

por 04.02.2014 / 19:25