Manter arquivos de log e de trabalho temporário sob controle com este script janelas

Eu passei muito tempo a ajudar amigos e familiares com seus problemas de computador, e eu tenho que dizer que, acima de todos os outros problemas, o único problema que eu vejo chegar a uma e outra vez são arquivos temporários e arquivos de log comendo disco encolhendo espaço e, eventualmente, atolando o sistema.

A pasta de arquivos temporários de Internet é um culpado comum, mas isso é um que tem uma solução fácil, porque tudo que você tem a fazer é configurar os arquivos para se excluídos dentro de Opções da Internet no painel de controle. No entanto, o que acontece com essa pasta traquinas Temp do Windows, ou todos os arquivos de log do aplicativo que continuar a construir com lixo aleatório que nunca é excluído? Na primeira, os não causar um grande problema, mas ao longo do tempo que o lixo acumulado se transforma em uma enorme pilha de arquivos antigos que servem a nenhum propósito útil.

aplicações bem escritos irá excluir arquivos de log ou temporários que já não são necessários, mas muitos programas lá fora não corretamente limpar depois de si - deixando-o, depois de anos, com um computador muito confuso. No entanto, se você souber de quaisquer pastas de log particulares - se é as pastas pasta Temp do Windows ou de log do aplicativo, como uma pasta de registo de notificação antivírus ou algo parecido, você pode usar o seguinte script do Windows para limpar regularmente os arquivos de log que são mais velhos do que alguns dias.

Arquivos temporários limpo com Windows Script

Se você é novo para o Windows Scripting, dar uma olhada rápida no tutorial WSH Eu escrevi um tempo atrás. Há muitas coisas legais que você pode fazer com o Windows Script, como alterar as configurações de rede ou agendar automaticamente o seu software antivírus ou a verificação de malware.Better Than lote: Um Tutorial Windows Scripting HostBetter Than lote: Um Tutorial Windows Scripting Hostconsulte Mais informação

Obviamente, se você quiser agendar uma rotina de limpeza para manter os arquivos de log de aplicativos ou pastas de arquivos temporários sob controle, o Windows Script é definitivamente a solução.

Escrevendo uma limpeza de scripts do Windows

Este script do Windows vai se concentrar em um diretório específico, e passar por todo esse diretório procurando arquivos que têm uma data de modificação que é mais velho do que alguns dias. Em seguida, exclui esses arquivos. Em seguida, o script vai passar por todas e quaisquer subdiretórios e realizar a mesma verificação e limpeza. Parece complicado? Não é. A primeira parte do script parecido com este:

Opção ExplicitOn Error Resume NextDim oFSO, oFolder, sDirectoryPathDim oFileCollection, oFile, sDirDim iDaysOldiDaysOld = 3

Esta seção declara as variáveis ​​do sistema de arquivos que você vai usar para acessar o diretório e os arquivos que você deseja limpar. Configurando a variável “iDaysOld” diz o script a idade dos arquivos que você deseja manter. Neste caso, eu estou mantendo todos os arquivos que são mais novos do que 3 dias de idade.

Em seguida, vem a seção de limpeza ultra-simples.

"***** limpar arquivos antigos no log PASTA ***** sDirectoryPath = "C: Users Proprietário AppData Local Temp "Definir oFSO = CreateObject ("Scripting.FileSystemObject") Definir oFolder = oFSO.GetFolder (sDirectoryPath) Definir oFileCollection = oFolder.FilesFor cada oFile em oFileCollectionIf oFile.DateLastModified lt; (Date () - iDaysOld) ThenoFile.Delete (True) End IfNext

A seção acima conecta com o Windows File System, e em seguida se conecta ao diretório que você definiu com a variável “sDirectoryPath”. Este primeiro ciclo passa por cada arquivo individual no diretório, verifica a data de modificação e compara com a idade do arquivo que você definiu. Se for mais de 3 dias, ele executa uma operação de exclusão nesse arquivo.

Isso funciona muito bem em arquivos, mas que sobre todos os subdiretórios em pastas como o diretório temporário do Windows? Esta próxima seção do script vai próxima imagem através de todos os subdiretórios e executar as mesmas operações de arquivo nos arquivos de lá também.

Para Cada oSubFolder Em oSubFolderssDirectoryPath = "C: Users Proprietário AppData Local Temp " & oSubFolderSet oFSO = CreateObject ("Scripting.FileSystemObject") Definir oFolder = oFSO.GetFolder (sDirectoryPath) Definir oFileCollection = oFolder.FilesFor cada oFile em oFileCollectionIf oFile.DateLastModified lt; (Date () - iDaysOld) ThenoFile.Delete (True) End IfNextIf oSubFolder.Size = 0 Then oSubFolder.Delete (Verdadeiro) Definir oFSO = NothingSet oFolder = NothingSet oFileCollection = NothingSet oFile = NothingNext

Finalmente, não se esqueça de limpar os objetos no caso em que não havia nenhum subdiretórios para percorrer.

	Definir oFSO = NothingSet oFolder = NothingSet oFileCollection = NothingSet oFile = NothingWScript.Quit


É simples assim. O script acima irá limpar qualquer pasta em tudo que você pode querer limpar. Escrever um roteiro individual para cada diretório que deseja manter limpo em uma programação regular, definir o “sDirectoryPath” para o diretório que você deseja manter limpo e, em seguida, armazená-lo em um diretório como “C: temp ” ou “ c: VBScripts ”. Depois de ter esses scripts criados, você está pronto para agendar esses scripts.

Agendamento de seus scripts de limpeza

Para agendar o seu script de limpeza, no Windows 7, vá em Ferramentas Administrativas e abrir o Agendador de Tarefas.

arquivos temporários limpas

Criar uma tarefa básica do item de menu Ação.

programa de armazenamento temporário limpo

Em seguida, configure o agendamento recorrente para ser executado sempre que você gostaria de limpar o diretório. No meu caso, eu corro meus scripts de limpeza ao meio-dia no domingo, quando eu estou normalmente sempre conectado e trabalhando no meu computador. Os scripts apenas executado em segundo plano.

programa de armazenamento temporário limpo

Você precisará configurar uma tarefa programada para cada script de janelas que você tenha escrito para limpar o registo ou temporários diretórios individuais.

Video: Permitir acesso remoto RDP para vários usuários ao mesmo tempo (Windows 7)

programa de armazenamento temporário limpo

Para testar seu script depois que você criou no no Agendar tarefa, basta clicar em “Action” e depois em “Executar”.

Video: Writing 2D Games in C using SDL by Thomas Lively

pasta temp limpo

Você deve ver todos os arquivos nessa pasta log ou temporária que são mais velhos do que alguns dias (ou no entanto você configurar seu script) são apagados automaticamente. No meu caso, eu limpar minha pasta Temp do Windows em uma base semanal. Depois de executar esse script, eu vi cerca de 45 arquivos na pasta ficar cortada para apenas cerca de 20 ou mais dos arquivos mais recentes - incluindo todos os arquivos nos subdiretórios.

arquivos temporários limpas

Pode ser uma dor real para manter os computadores - e esse trabalho pode ficar ainda mais difícil quando você tem o sistema e todos os tipos de aplicações constantemente escrevendo em arquivos de log ou a construção de arquivos temporários de lixo na pasta temp do Windows. Este script é especialmente útil para TI techs que pode executar regularmente trabalhos em lote ou scripts em um servidor que criam novos arquivos de log de cada vez que são executados. Ao executar um script do Windows que limpa regularmente backup dos arquivos de log mais antigos, você pode gravar arquivos FSM como acima que irá manter os diretórios de log agradável e limpo - você pode manter um histórico de arquivos de log que você deseja, mas limpar os realmente antigos que você não.

Você pode pensar de alguns usos criativos para tal script? Você pastas temporárias limpas e arquivos de log manualmente - e talvez um script como este conservá-lo funcionar? Experimentá-lo e compartilhar seus pensamentos e comentários na seção de comentários abaixo!


Artigos relacionados