Excluir itens por meio da linha de comando é bastante fácil.
del /options filename.extension
Agora, suponha que eu queira excluir todos os arquivos que não terminem com .jpg em uma pasta, como eu faria isso.
O problema é que tenho um software que converte todas as imagens especificadas em .jpg, mas deixa os originais, dos quais não preciso mais.
Seria muito mais eficiente executar uma única instrução, em comparação com executar várias instruções para cada tipo de arquivo diferente.
windows
command-line
KdgDev
fonte
fonte
/s
a cada linha para incluir recursivamente os arquivos nos subdiretórios.Isso é realmente muito fácil.
Você precisará
for
percorrer os arquivos e simplesmente procurar a extensão:deve fazer o truque (código aqui ).
fonte
PowerShell to the rescue
Nos tempos do Windows 7/8, é o sucessor da boa e velha linha de comando
Del
é um alias paraRemove-Item
. Possui várias opções, como recursar, incluir, excluir e filtrar (use isso para RegEx)Você precisa adicionar
\*
para incluir arquivos em uma determinada pastafonte
PowerShell.exe -Command "&{Remove-Item C:\MyFolder\* -Exclude '*.jpg'}"
Sei que não está respondendo diretamente à sua pergunta, mas você examinou as opções no seu conversor para ver se:
ou
fonte
Eu estava procurando uma maneira de encontrar todos os arquivos que NÃO tinham a extensão ".mp3" em um diretório TREE no Windows 7 (volume NTFS) contendo talvez 20.000 arquivos em várias centenas de diretórios de várias profundidades ... então, depois de um pouco de angústia, eu usei:
isso listou os arquivos que não corresponderam ao arquivo .mp3 após remover tudo relacionado à saída do comando DIR ... 99% funciona ... a menos que o arquivo que não corresponda seja nomeado como uma das palavras-chave na saída DIR padrão - talvez haja uma maneira de fazer com que o DIR relate menos informações de cabeçalho / resumo - mas não me incomodei, pois isso ocorreu na maior parte do caminho.
fonte
/b
bandeira dodir
comando.dir /b
listará nomes de arquivos e extensões apenas no diretório atual,dir /s /b
listará os nomes completos de todos os arquivos nos subdiretórios atual e em todos os. Tubulação para emfind /v
vez de umfor
loop é um toque agradável que vou ter que lembrar, mas acho que não funcionadel
.Outra maneira de excluir todos os arquivos correspondentes a um nome de arquivo é mostrada abaixo. A lista de loop for é todos os arquivos e o if NOT corresponde ao nome do arquivo (sem o nome do diretório).
fonte