Você está na página 1de 2

' deleta.

vbs ' este script entra na pasta de usurios do windows e deleta as pastas com mais de 90MB ' OBS: deleta a pasta da conta do usurio, no uma pasta dentro da conta ' Cria um objeto que referencia o sistema de arquivos Set objFS=CreateObject("Scripting.FileSystemObject") ' A linha abaixo vai para a pasta dos usurios do Windows 7 ' strFolder = "C:\Users" ' A linha abaixo vai para a pasta dos usurios do Windows XP (no testei esta) strFolder = "C:\Documents and Settings" ' entra na pasta especificada pela varivel objFS Set objFolder = objFS.GetFolder(strFolder) ' Chama a sub-rotina Go, que vai ser definida abaixo Go (objFolder) ' Definio da sub-rotina Go (recebe uma pasta como argumento) Sub Go(objDIR) ' Se a pasta a ser examinada no for a Default (se for o XP acho que Defau lt User), ' faz o que for definido dentro do if If objDIR <> "\Default User" and (not (objDIR = "\Administrator" or objDIR = " \administrador" or objDIR = "\All Users" or objDIR = "\Default User" or objDIR = "\NetworkService" or objDIR = "\LocalService")) Then ' para cada pasta dentro do lugar especificado: For Each eFolder in objDIR.SubFolders ' verifica se a pasta no uma daquelas de cima (pra evita r problemas) If eFolder.Name = "Default User" or eFolder.Name = "def ault user" Then WScript.Echo "Pasta Default no ser excluda! " Elseif eFolder.Name = "Administrador" or eFolder.Name = "administrador" Then WScript.Echo "Pasta do Administrador no s er excluda!" Elseif eFolder.Name = "All Users" or eFolder.Name = "a ll users" Then WScript.Echo "Pasta All Users no ser exclud a!" Elseif eFolder.Name = "NetworkService" or eFolder.Name = "networkservice" Then WScript.Echo "Pasta NetworkService no ser excluda!" Elseif eFolder.Name = "LocalService" or eFolder.Name = "localservice" Then WScript.Echo "Pasta All Users no ser exclud a!" Else '========================= MUDANAS COMEAM AQUI ======================== ' pega a data de ltimo acesso LastMod = eFolder.DateLastModified ' calcula h quantos dias a pasta no acessa da 'DateDiff um mtodo do VB que calcula a di ferena entre duas datas: ' DateDiff(intervalos, dat

a1, data2) diferenca = DateDiff("d",Date,LastMod) ' Escreve h quanto tempo a pasta no acessa da WScript.Echo eFolder.Name, "no acessada h " & Abs(diferenca) & " dias" ' Se a diferena entre as datas for maior que 30 dias If Abs(diferenca) > (9) Then ' Avisa que vai deletar WScript.Echo ">>>>>>>>>>>>>>>>>> >>> Pasta Deletada: " & eFolder.Path ' E Deleta ela eFolder.Delete ' OBS: a pasta deletada NO vai pa ra a lixeira, ' ento prepara o getdataback pra corrigir algum erro eventual End If '========================= MUDANAS TERMIN AM AQUI ======================== End If Next End If End Sub

Você também pode gostar