Como excluir automaticamente arquivos mais antigos do que um número específico de dias no Windows PC

Como excluir automaticamente arquivos mais antigos do que um número específico de dias no Windows PC

Você tem uma pasta onde seus arquivos de log são acumulados e a pasta está crescendo cada vez maior a cada dia que passa. Agora, para os novos arquivos de log entrar, você com certeza precisa de algum espaço. Mas se você tiver que fazer isso manualmente, isso definitivamente vai levar algum tempo. Que tal você clicar duas vezes em um arquivo em lote e o arquivo em lote excluiria arquivos mais antigos do que um número especificado de dias? Ou digamos que tal o arquivo em lote exclua todos os arquivos de uma extensão específica, digamos .temp, sempre que você clica nele? Parece bom? Este artigo é tão personalizado para você então.

Continue lendo, para saber como você pode excluir facilmente todos os arquivos ou arquivos específicos, mais antigos do que um número específico de dias com a ajuda de um script de lote simples.

Índice

  • Cenário de amostra
  • Seção 1: Como excluir automaticamente todos os arquivos mais antigos do que um número específico de dias
  • Seção 2: Como excluir automaticamente um arquivo específico mais antigo que um número específico de dias
  • Seção 3: Como excluir automaticamente os arquivos com uma extensão de arquivo específica e mais antiga que um número específico de dias
  • Seção 4: Como excluir automaticamente todos os arquivos

Cenário de amostra

Por favor, verifique se você tem todos os arquivos a serem considerados para exclusão sob um pai pasta. Não há problema em esta pasta pai ter subpastas, pois o script em lote também procurará arquivos nas subpastas, para excluí -las. No exemplo seguinte, tenho uma pasta chamada de repo, sob a qual tenho todos os arquivos que preciso considerar para exclusão.

Seção 1: Como excluir automaticamente todos os arquivos mais antigos do que um número específico de dias

Passo 1: Vá para qualquer local da sua preferência, pode até ser o seu desktop. É aqui que seu arquivo em lote será criado.

Agora Clique com o botão direito do mouse em qualquer lugar em um espaço vazio e depois clique em Novo E então Documento de texto.

Passo 2: Clique no arquivo recém -criado uma vez e depois pressione o F2 chave para Renomear isto.

Dê o arquivo Qualquer nome de sua escolha, Mas certifique -se de dar a extensão do arquivo como bastão. No exemplo abaixo, nomeamos nosso arquivo em lote como GeekPageBatchDelete.bastão.

Observação: É muito importante dar o bastão extensão.

etapa 3: Acerte o Digitar chave e você receberá o seguinte Renomear janela, onde você tem que atingir o Sim botão para prosseguir.

Passo 4: Como a seguir, Clique com o botão direito do mouse no recém -criado arquivo em lote e depois clique no Editar opção.

Etapa 5: Copie e cole o seguinte código no Bloco de anotações Arquivo que abre antes de você.

@echo off forfiles /p "" /s /m *.* /D - /C "cmd /c del @path"

Nota importante: Por favor, substitua com o caminho completo da pasta pai que possui seus arquivos. Além disso, substitua com o número real de dias. Todos os arquivos mais antigos do que o número de dias serão excluídos. Você pode se referir à captura de tela abaixo para uma imagem mais clara.

Explicação do script

Esta seção é para nossos leitores nerds que estão curiosos sobre o trabalho interno de nossos pequenos scripts. Vamos ver o que está acontecendo no roteiro acima.

forfiles - Esta palavra -chave é usada para executar o comando em todos os arquivos dentro da pasta selecionada.

/p - /p define o caminho para a string, que é , que o segue.

/s - Este parâmetro garante que Todos os arquivos dentro o subpastas também são atravessados.

/m *.*- /m parâmetro é fazer a correspondência. O curinga *.* significa que todos os arquivos devem ser considerados, independentemente de seus nomes e extensões.

/D - Usando este parâmetro que você pode especificar um data.

/C - É depois deste parâmetro que especificamos o comando que precisa ser executado em todos os arquivos que atendem às condições.

del @path - Isso excluirá o arquivo no caminho fornecido, que atende ao restante das condições acima. Desde que usamos forfiles, Todos os arquivos serão excluídos um por um.

Etapa 6: Agora acerte o Arquivo guia na parte superior e depois atinge o Salvar opção.

Alerta: Antes de prosseguir com a Etapa 7, verifique se você tem um backup se for necessário. Depois de executar o arquivo em lote, todos os arquivos na pasta especificada mais antigos que o número especificado de dias serão excluídos.

Etapa 7: Agora, simplesmente Duplo click no lote arquivo para executá -lo e ver a magia.

Seção 2: Como excluir automaticamente um arquivo específico mais antigo que um número específico de dias

Agora digamos que você tenha um arquivo específico que você precisa ser excluído se for mais velho que um número específico de dias. Nesse caso, você pode seguir exatamente as mesmas etapas da seção acima, mas em Etapa 5, por favor copiar e colar o código a seguir em vez disso.

@echo off forfiles /p "" /s /m /d - /c "cmd /c del @path"

Substituir a seguir:

-> O caminho real para a sua pasta que contém o arquivo a ser excluído.

- O nome do arquivo que deve ser excluído.

- O número real de dias.

Seção 3: Como excluir automaticamente os arquivos com uma extensão de arquivo específica e mais antiga que um número específico de dias

Agora, digamos que você deseja excluir todos os arquivos TXT em uma pasta ou os arquivos DOCX, mais antigos que um número específico de dias. Nesse caso, você pode seguir as etapas mencionadas em Seção 1. Mas, assim como na Seção 2, em Etapa 5, copiar e colar o código a seguir em vez disso.

@echo off forfiles /p "" /s /m *. /D - /c "cmd /c del @path"

Substituir a seguir:

- Este é o caminho da pasta que contém o arquivo a ser excluído.

- O tipo de extensão que você deseja ser excluído.

- Se o arquivo for mais antigo que o número de dias especificado e for da extensão mencionada usando , será excluído.

Seção 4: Como excluir automaticamente todos os arquivos

Vamos ver mais um caso em que você deseja excluir todos os arquivos dentro de uma pasta específica, independentemente de sua extensão e o número de dias em que eles foram criados. Nesse caso, você precisa especificar o número de dias como zero. As etapas são todas as mesmas que mencionadas em Seção 1, A única diferença está no código em que você cola Etapa 5, que deve ser como abaixo.

@echo off forfiles /p "" /s /m *.* /D -0 /C "cmd /c del @path"

Substituir a seguir:

- Todos os arquivos neste caminho serão excluídos, independentemente de sua extensão ou idade.

Você também pode tentar outras combinações, como excluir Todos os arquivos que são de um extensão específica por Combinando seções 3 e 4. Por favor, informe -nos se você tiver outros requisitos personalizados.

É isso. Por favor, conte -nos na seção de comentários se você poderia automatizar o processo com a ajuda de nosso artigo.

Fique atento para obter mais dicas, truques, instruções e hacks incríveis.