Recentemente respondi uma pergunta extremamente semelhante aqui
Em suma, você pode usar a construção autônoma do GNUWin32 do comando "Find" do Linux para excluir qualquer arquivo mais de X minutos.
Configuração
- Faça o download dos arquivos binários (findutils-4.2.20-2-bin) e dependências (findutils-4.2.20-2-dep) .zip do link acima.
- Extraia e copie o conteúdo da pasta dependências para a pasta binários (sinta-se à vontade para sobrescrever).
- Renomeie find.exe na pasta "bin" (por exemplo, gnu_find.exe ) para evitar conflitos com comandos do Windows.
Assumindo a renomeação acima, o comando para localizar e excluir arquivos de 12 horas ou mais seria:
gnu_find.exe "C:\Path\To\Files" ! -mmin -720 -type f -delete
em que e. -720 representa um número de minutos (60 * 12 neste caso). Não deixe de fora! (negação) opção, uma vez que sem ele, arquivos em (menos de) 12 horas seriam excluídos.
Note que você pode deixar -delete se você quiser simplesmente visualizar os arquivos com os quais estará trabalhando.
O GNUWin32 Find também suporta uma opção -name que permite a correspondência de padrões com asteriscos, por exemplo.
gnu_find.exe "C:\Path\To\Files" ! -mmin -720 -type f -name "text*" -delete
Advertências sobre o nome
- Esteja ciente de que -name deve sempre aparecer antes de -delete ou não terá efeito.
- Você pode usar asteriscos conforme desejar para correspondência de padrões (inclusive em várias posições), mas tenha cuidado ao incluir períodos com asteriscos (ou seja, se a correspondência de extensão de arquivo for uma preocupação, use apenas "nome do arquivo *" ou "* ext"). Isso tem a ver com a maneira como a linha de comando do Windows interpreta as coisas.
- Você pode encontrar nomes específicos (por exemplo, "filename.txt"), mas no Windows você deve incluir a extensão como GNUWin32 Find, considere a string inteira do nome do arquivo ("nome do arquivo" < > "nome do arquivo.txt")
Automação
Você pode usar o Agendador de Tarefas para executar tarefas automaticamente, mas, conforme detalho no primeiro link, talvez não seja uma opção preferível. Eu pessoalmente recomendo um aplicativo no estilo "cron" do Linux (conforme detalhado nessa resposta).
Windows 10
O problema acima provavelmente funcionará com qualquer versão do Windows, mas as versões atualizadas do Windows 10 devem ter a capacidade de executar um Subsistema Ubuntu Linux . "find" e "cron" são extremamente básicos e devem estar disponíveis com isso (embora esta versão do "cron" pareça ter uma janela aberta, então pode não ser totalmente adequada para o seu propósito).