7 votos

Elimine los archivos temporales de secuencia de comandos por lotes en xp

Estoy buscando un buen script por lotes que se iba a encontrar con rapidez y limpieza de todos los conocidos caja fuerte temporal de carpetas/archivos de Windows (como tantas variantes como sea posible) de las máquinas (por ejemplo, la carpeta temp de windows, todos los usuarios de IE carpetas temp, etc.). Soy aficionado de la interfaz de usuario de herramientas como CCleaner (más Cleanmgr.exe), pero cuando estoy tratando de limpiar varios ordenadores de forma rápida y/o con la participación mínima, sería bueno tener una secuencia de comandos.

Además, con una secuencia de comandos, yo podría cadena de varios guiones juntos. Tal vez uno para, a continuación, el fuego de varios antivirus y/o detectores de malware.

Alguien tiene una buena o puede apuntar a un buen recurso?

7voto

Garrett Puntos 894

Aquí un poco del guión que escribió de las que tengo en mi USB de la utilidad de la unidad de... ideal para servidores citrix :)

@echo off
Echo Started %time%
Echo Started %time% >> temps.txt
Echo Running for XP... >> temps.txt
Echo Running for XP...
FOR /F "tokens=*" %%G IN ('DIR /B /AD') DO IF EXIST "%%G\Local Settings\Temp\" (
    RMDIR /S /Q "%%G\Local Settings\Temp"
    MKDIR "%%G\Local Settings\Temp"
    Echo Cleared %%G\Local Settings\Temp
    Echo Cleared %%G\Local Settings\Temp >> temps.txt
)
FOR /F "tokens=*" %%G IN ('DIR /B /AD') DO IF EXIST "%%G\Local Settings\Temporary Internet Files\" (
    RMDIR /S /Q "%%G\Local Settings\Temporary Internet Files\"
    MKDIR "%%G\Local Settings\Temporary Internet Files\"
    Echo Cleared %%G\Local Settings\Temporary Internet Files\
    Echo Cleared %%G\Local Settings\Temporary Internet Files\ >> temps.txt
)
Echo Done.
Echo Running for Vista >> temps.txt
Echo Running for Vista...
FOR /F "tokens=*" %%G IN ('DIR /B /AD') DO IF EXIST "%%G\AppData\Local\Temp\" (
    RMDIR /S /Q "%%G\AppData\Local\Temp\"
    MKDIR "%%G\AppData\Local\Temp\"
    Echo Cleared %%G\AppData\Local\Temp\
    Echo Cleared %%G\AppData\Local\Temp\ >> temps.txt
)
FOR /F "tokens=*" %%G IN ('DIR /B /AD') DO IF EXIST "%%G\AppData\Local\Microsoft\Windows\Temporary Internet Files\" (
    RMDIR /S /Q "%%G\AppData\Local\Microsoft\Windows\Temporary Internet Files\"
    MKDIR "%%G\AppData\Local\Microsoft\Windows\Temporary Internet Files\"
    Echo Cleared %%G\Local Settings\Temporary Internet Files\
    Echo Cleared %%G\Local Settings\Temporary Internet Files\ >> temps.txt
)
Echo Done.
Echo Ended %time%
Echo Ended %time% >> temps.txt

Utilice a su propio riesgo, etc... de ESTA forma se ELIMINA COSAS.

Puedo ejecutar desde la carpeta Documents and Settings o Usuarios de Vista. Usted puede fácilmente hacer un CD de comandos en la parte superior para ejecutar desde cualquier lugar que usted desee.

cd %userprofile%
cd ..

También, es generalmente seguro para borrar la carpeta temp en cualquier momento en mi experiencia. Los programas con los archivos de temp se bloqueo, y este script error en el archivo y seguir adelante.

El SI EXISTE línea es particularmente agradable aquí, se mantiene la secuencia de comandos de creación de carpetas en NetworkService y carpetas similares, y si no se ejecutan en Vista o XP que sección va super rápido.

Crea temps.txt el archivo de registro cada vez que se ejecute la secuencia de comandos de

Edita: Consejo de ##de windows-server en Freenode: Q: ¿por Qué no detectar qué sistema operativo se está ejecutando en el inicio y ejecutar la sección apropiada? R: yo uso el script con frecuencia en los medios de comunicación sin conexión, tales como una unidad de disco duro que ha sido extraído.

3voto

Evan Anderson Puntos 118832

Tenga cuidado acerca de destrozar archivos temporales. Algunos instaladores de software alijo de archivos que hay entre las botas. Un antiguo jefe mío almacenan los archivos importantes que hay (pero, entonces, él no era demasiado brillante acerca de algunas cosas).

En un archivo de proceso por lotes, haga lo siguiente:

DEL /S /Q "%TEMP%\*.*"

Hace lo que usted desea. Ejecución que como un inicio de sesión-script (o al iniciar una sesión en la que, en general) claro el por usuario directorio temp. Se ejecuta como un script de inicio (mientras se ejecuta como como .Valor PREDETERMINADO), se borrará la máquina directorio temp.

Tengo un VBScript que me quedo a limpiar los archivos temporales en el arranque y de inicio de sesión basado en su edad. Es algo que pertenece a un Cliente, así que no puedo publicar aquí (lo escribió en su moneda de diez centavos), pero es algo que un scripter, podría poner juntos en un par de minutos para usted.

Yo no soy consciente de que una API compatible para limpiar la IE "Archivos Temporales de Internet". Usted puede simplemente eliminar de ellos, supongo, pero yo no.

3voto

Jim B Puntos 18849

El mejor seguro camino para limpiar los directorios temporales es con cleanmgr. La desventaja es que usted tiene que ejecutar sageset en cada máquina o (y mucho más fácil) es crear un archivo ADM con las entradas del registro y el uso de directiva de grupo para enviarlos a los escritorios cliente. la clave del registro a tener en cuenta es: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches

Ver también Cómo Automatizar la Herramienta liberador de espacio en Windows XP

1voto

Julius Thyssen Puntos 11

Eres todo lo que es demasiado duro. Esta es Windows XP él le pregunta acerca de. He aquí algunos útiles:

DEL /Q /S "%USERPROFILE%\Local Settings\Temp\*.*"
DEL /F /Q /S "%USERPROFILE%\Local Settings\Temporary Internet Files\*.*" >NUL
DEL /F /Q /S "%WinDir%\Temp\*.*"

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: