Como excluir arquivos mais antigos que um determinado número de dias no Windows 10

A ferramenta de comando ForFiles vem ao resgate


A Microsoft está apresentando opções no Windows 10 Redstone 4 que permitirá aos usuários limpar automaticamente a pasta de downloads e a Lixeira em intervalos regulares, mas para usuários que desejam remover arquivos sem a entrada manual de outros diretórios, as soluções de terceiros são a única solução.

Felizmente, as ferramentas incorporadas do Windows vêm ao resgate e, na verdade, permitem que você faça exatamente isso: remova arquivos mais antigos que um certo número de dias de uma pasta específica em um segundo.

Basicamente, é assim que tudo funciona antes de saltar diretamente aos detalhes. Os comandos que você pode encontrar abaixo ajudam você a construir um script (um arquivo BAT) que procurará automaticamente arquivos mais antigos do que um número de dias definidos por você e que serão removidos, deixando o diretório limpo.

O que você precisa saber é que, dependendo da pasta que você deseja limpar, os privilégios de administrador podem ser necessários, embora a maioria dos casos, os usuários padrão possam ser capazes de executar esses comandos apenas.

Quem precisa disso? A resposta a esta pergunta é tão simples como poderia ser: qualquer pessoa que queira manter as pastas limpas, como a biblioteca de downloads, pode recorrer a tais scripts para excluir itens da pasta automaticamente. Por outro lado, os administradores de sistemas e os profissionais de TI que gerenciam sistemas em uma rede maior são os que podem achar isso mais útil do que outros, pois torna a limpeza uma brisa sem a necessidade de software de terceiros.

POR QUE NÓS PRECISAMOS? Manter arquivos que você não precisa no seu sistema não só que consome espaço valioso, mas também retarda o carregamento dessa pasta específica, de modo que, quanto mais freqüentemente você limpa o computador, melhor será o desempenho. Além disso, esta ferramenta é recomendada para todos aqueles que desejam realizar manutenção regularmente.

QUANDO PRECISAMOS? Isso depende de quantas vezes você deseja remover arquivos mais antigos de seus diretórios. Por exemplo, se você deseja remover itens com mais de 30 dias da pasta de downloads, basta executar o script abaixo de cada mês e você deve estar pronto para ir.
Agora que respondemos as questões básicas, vamos proceder com o essencial. Para esta tarefa, vamos usar a ferramenta de comando ForFiles, cujo objetivo é gerenciar arquivos específicos do utilitário de linha de comando. ForFiles suporta vários parâmetros e discutirei os que usaremos abaixo.

Para este guia, estamos usando a pasta de downloads padrão do Windows 10 localizada em C: \ Users \ Username \ Downloads e o destino de 30 dias como configurações, mas você pode alterá-las para o que quiser.

Executando o comando de limpeza no PowerShell

# 1. Inicie o prompt de comando / Windows PowerShell (com privilégios de administrador) clicando com o botão direito do mouse no menu Iniciar do Windows 10 ou digitando seus nomes no menu Iniciar.

# 2. O comando padrão que vamos usar aqui é o seguinte (usei itálico para destacar as áreas que você precisa alterar de acordo com suas configurações - o caminho representa a pasta que deseja limpar e 30 é o número de dias) :

ForFiles /p “C:\Users\Username\Downloads” /s /d -30 /c “cmd /c del @file”

O significado desse comando é o seguinte:

/ p representa o caminho da pasta que você deseja ForFiles para procurar arquivos anteriores a um número específico de dias; 
/ s significa que ForFiles aplicará a regra de remoção em subdiretórios também, se houver algum; 
/ d é o indicador para a data, no nosso caso 30 dias 
/ c envia ForFiles o comando para executar a tarefa 
del stands para delete 

@file representa o nome do arquivo e neste comando, ele aplica o comando a todos os arquivos
À primeira vista, executar esse comando particular não é nada difícil demais, embora seja evidente que você precisa inserir manualmente o caminho todas as vezes. Felizmente, você pode simplificá-lo um pouco.

Abertura do PowerShell em uma determinada pasta

Navegue até a pasta que deseja limpar, abra-o, pressione SHIFT e clique com o botão direito do mouse na pasta. Clique na opção que lê a janela Open PowerShell aqui (ou Sinal de comando se você estiver em uma versão mais antiga do Windows) e digite o seguinte comando:

ForFiles /s /d -30 /c “cmd /c del @file”

Neste exemplo, removemos o parâmetro / p (caminho) porque já não precisamos, já que já estamos na pasta que precisamos limpar.

Existem várias outras formas de automatizar o processo de limpeza de cada pasta e você pode fazê-lo com um arquivo .BAT que inclui as seguintes linhas:

@echo off
ForFiles /s /d -30 /c “cmd /c del @file”
end

Com este script, todos os arquivos com mais de 30 dias (incluindo o próprio script) serão removidos quando simplesmente iniciando o arquivo BAT.

2 comentários:

  1. Show! Fiz um script de backup para manter 10 dias de arquivos. Parabéns pelo post. Muito didático.

    ResponderExcluir