Script para excluir arquivos temporários para todos os usuários no XP, Vista e 7

2

Basicamente, temos vários clientes que executam o XP e 7 com algumas máquinas do Vista.

Encontrei este script em lote , mas é limitado ao usuário atual (usa a variável de ambiente% userprofile%). Estou procurando por algo assim, mas que funcionaria para todas as contas de usuário no computador. O script seria executado como administrador.

No XP, ele excluiria o conteúdo de:
Local Settings\Temp e Local Settings\Temporary Internet Files

Para o Vista / 7, ele excluiria o conteúdo de:
AppData\Local\Temp e AppData\Local\Microsoft\Windows\Temporary Internet Files

Sou relativamente inexperiente com scripts, e não tenho certeza se um arquivo em lote pode fazer isso. Alguém já percorreu esse caminho e encontrou uma solução?

    
por Chris 10.01.2012 / 17:15

3 respostas

5

Eu usei isso para algum sucesso. Você pode precisar editá-lo para o seu ambiente, mas para mim ele funciona para o XP Vista e 7. Algumas coisas, verifique se ele é executado de cada vez com o menor impacto e entenda que ele é tão intrusivo quanto você pode realmente conseguir. já que remove as pastas e as cria novamente. Você pode alterar o rmdir para del /f e adicionar \ ao final dos caminhos dos arquivos e, em seguida, remover a linha mkdir se preferir não remover as pastas e apenas excluir o conteúdo.

Isso DELETA uma tonelada de coisas, use a seu próprio risco.

@echo off

IF EXIST c:\windows\temp\ del /f /s /q c:\windows\temp\

DEL /f /s /q %temp%\

IF EXIST "C:\Documents and Settings\" (
    for /D %%x in ("C:\Documents and Settings\*") do ( 
        rmdir /s /q "%%x\Local Settings\Temporary Internet Files" 
        mkdir "%%x\Local Settings\Temporary Internet Files" 
    )
)

IF EXIST "C:\Documents and Settings\" (
    for /D %%x in ("C:\Documents and Settings\*") do ( 
        rmdir /s /q "%%x\Local Settings\Temp" 
        mkdir "%%x\Local Settings\Temp" 
    )
)

IF EXIST "C:\Users\" (
    for /D %%x in ("C:\Users\*") do ( 
        rmdir /s /q "%%x\AppData\Local\Temp" 
        mkdir "%%x\AppData\Local\Temp" 
    )
)

IF EXIST "C:\Users\" (
    for /D %%x in ("C:\Users\*") do ( 
        rmdir /s /q "%%x\AppData\Local\Microsoft\Windows\Temporary Internet Files" 
        mkdir "%%x\AppData\Local\Microsoft\Windows\Temporary Internet Files" 
    )
)

Observe que isso separa as diferentes pastas, principalmente para maior clareza, mas se você quiser condensá-las, poderá compactá-las em apenas dois loops. Um exemplo seria:

IF EXIST "C:\Users\" (
    for /D %%x in ("C:\Users\*") do ( 
        rmdir /s /q "%%x\AppData\Local\Temp" 
        mkdir "%%x\AppData\Local\Temp" 
        rmdir /s /q "%%x\AppData\Local\Microsoft\Windows\Temporary Internet Files" 
        mkdir "%%x\AppData\Local\Microsoft\Windows\Temporary Internet Files" 
    )
)

Por solicitação, compactado e usando o comando delete.

@echo off

IF EXIST c:\windows\temp\ del /f /s /q c:\windows\temp\

DEL /f /s /q %temp%\

IF EXIST "C:\Users\" (
    for /D %%x in ("C:\Users\*") do ( 
        del /f /s /q "%%x\AppData\Local\Temp\" 
        del /f /s /q "%%x\AppData\Local\Microsoft\Windows\Temporary Internet Files\" 
    )
)

IF EXIST "C:\Documents and Settings\" (
    for /D %%x in ("C:\Documents and Settings\*") do ( 
        del /f /s /q "%%x\Local Settings\Temp\" 
        del /f /s /q "%%x\Local Settings\Temporary Internet Files\" 
    )
)
    
por 11.01.2012 / 15:57
-2

cd C: \ Usuários \% nome do usuário% \ AppData \ Local  rmdir / S / Q Temp

do C: \ Windows \ Prefetch *. * / Q

del C: \ Windows \ Temp *. * / Q

del C: \ Usuários \% nome_do_usuário% \ AppData \ Roaming \ Microsoft \ Windows \ Itens Recentes *. * / Q pausar

    
por 01.02.2015 / 00:13
-2

Para mim, este comando funciona bem, tente isso, ele irá apagar todos os arquivos temporários

cd \
Del *.tmp /s
    
por 03.02.2016 / 12:02