Anuncio
He pasado mucho tiempo ayudando a amigos y familiares con sus problemas informáticos, y tengo que decir que, por encima de todos los demás problemas, el Un problema que veo aparecer una y otra vez son los archivos temporales y los archivos de registro que consumen espacio de disco cada vez más pequeño y, finalmente, empantanan el sistema.
La carpeta de archivos temporales de Internet es un culpable común, pero esa es una solución fácil, porque todo lo que tienes que hacer es configurar los archivos para que se eliminen dentro de las Opciones de Internet en el control panel. Sin embargo, ¿qué pasa con esa molesta carpeta temporal de Windows, o todos esos archivos de registro de aplicaciones que se siguen acumulando con basura aleatoria que nunca se elimina? Al principio, esos no causan un gran problema, pero con el tiempo esa basura acumulada se convierte en una enorme pila de archivos antiguos que no tienen ningún propósito útil.
Las aplicaciones bien escritas eliminarán los archivos de registro o temporales que ya no son necesarios, pero demasiados programas no se limpian adecuadamente después de sí mismos, dejándote, después de años, con una situación muy desordenada computadora. Sin embargo, si conoce alguna carpeta de registro particular, ya sea la carpeta temporal de Windows o las carpetas de registro de la aplicación, como un antivirus carpeta de registro de notificaciones o algo así, puede usar el siguiente script de Windows para limpiar regularmente los archivos de registro que son más antiguos que unos pocos días.
Limpiar archivos temporales con Windows Script
Si es nuevo en Windows Scripting, eche un vistazo rápido a WSH tutorial Better Than Batch: A Windows Scripting Host Tutorial Lee mas Escribí hace un tiempo. Hay muchas cosas interesantes que puede hacer con Windows Script, como cambiar la configuración de red Cómo escribir un script de Windows para cambiar la configuración de red sobre la marchaEn muchas oficinas o entornos de trabajo, es posible que deba redefinir la configuración de su red para conectarse a diferentes redes. Me encontré en esta situación con la suficiente frecuencia, y me cansé de navegar hacia ... Lee mas o programar automáticamente su software de escaneo antivirus o de malware 5 maneras de limpiar su computadora con un script automatizado [Windows]El mantenimiento de la computadora no es exactamente algo que la mayoría de la gente recuerda hacer. Para el usuario general que no es exactamente experto en tecnología, cuando una computadora no funciona, solicitan ayuda o simplemente compran una nueva ... Lee mas .
Obviamente, si desea programar una rutina de limpieza para mantener esos archivos de registro de aplicaciones o carpetas de archivos temporales bajo control, Windows Script es definitivamente la solución.
Escribir un script de limpieza de Windows
Esta secuencia de comandos de Windows se centrará en un directorio en particular y recorrerá todo ese directorio en busca de archivos que tengan una fecha de modificación anterior a unos pocos días. Luego elimina esos archivos. Luego, el script pasará por todos y cada uno de los subdirectorios y realizará la misma verificación y limpieza. ¿Suena complicado? No es. La primera parte del script se ve así:
Opción explícita al error Reanudar siguiente Dim oFSO, oFolder, sDirectoryPath Dim oFileCollection, oFile, sDir Dim iDaysOld iDaysOld = 3
Esta sección declara las variables del sistema de archivos que usará para acceder al directorio y los archivos que desea limpiar. La configuración de la variable "iDaysOld" le indica al script la antigüedad de los archivos que desea conservar. En este caso, mantendré todos los archivos que tengan más de 3 días.
Luego viene la sección de limpieza ultra simple.
'***** BORRAR ARCHIVOS ANTIGUOS EN LA CARPETA DE REGISTRO ***** sDirectoryPath = "C: \ Users \ Owner \ AppData \ Local \ Temp \" Set oFSO = CreateObject ("Scripting. FileSystemObject ") Establecer oFolder = oFSO.GetFolder (sDirectoryPath) Establecer oFileCollection = oFolder. Archivos para cada oFile en oFileCollection If oFile. DateLastModifiedLa sección anterior se conecta con el Sistema de archivos de Windows y luego se conecta al directorio que ha definido con la variable "sDirectoryPath". Este primer ciclo recorre cada archivo individual en el directorio, verifica la fecha de modificación y la compara con la antigüedad del archivo que definió. Si tiene más de 3 días, realiza una operación de eliminación en ese archivo.
Esto funciona muy bien en archivos, pero ¿qué pasa con todos los subdirectorios en carpetas como el directorio temporal de Windows? La siguiente sección de la secuencia de comandos luego archivará a través de todos los subdirectorios, y también realizará las mismas operaciones de archivo en los archivos allí.
Para cada oSubFolder En oSubFolders sDirectoryPath = "C: \ Users \ Owner \ AppData \ Local \ Temp \" & oSubFolder Set oFSO = CreateObject ("Scripting. FileSystemObject ") Establecer oFolder = oFSO.GetFolder (sDirectoryPath) Establecer oFileCollection = oFolder. Archivos para cada oFile en oFileCollection If oFile. DateLastModifiedFinalmente, no te olvides de limpiar los objetos en el caso de que no haya subdirectorios para revisar.
Establecer oFSO = Nada Establecer oFolder = Nada Establecer oFileCollection = Nada Establecer oFile = Nada WScript. DejarEs tan simple como eso. La secuencia de comandos anterior limpiará cualquier carpeta que desee limpiar. Escriba un script individual para cada directorio que desee mantener limpio en un horario regular, configure el "SDirectoryPath" en el directorio que desea mantener limpio y luego almacénelo en un directorio como "C: \ temp \" o "C: \ vbscripts \". Una vez que haya configurado esos scripts, estará listo para programarlos.
Programación de sus scripts de limpieza
Para programar su secuencia de comandos de limpieza, en Windows 7, vaya a Herramientas administrativas y abra el Programador de tareas.
Cree una tarea básica desde el elemento del menú Acción.
Luego, configure la programación periódica para que se ejecute siempre que desee limpiar ese directorio. En mi caso, ejecuto mis scripts de limpieza al mediodía del domingo, cuando normalmente siempre estoy conectado y trabajando en mi computadora. Los scripts simplemente se ejecutan en segundo plano.
Deberá configurar una tarea programada para cada secuencia de comandos de Windows que haya escrito para limpiar el registro individual o los directorios temporales.
Para probar su secuencia de comandos después de haber creado en el Programa de tareas, simplemente haga clic en "Acción" y luego "Ejecutar".
Debería ver que todos los archivos en ese registro o carpeta temporal que son más antiguos que unos días (o como haya configurado su script) se eliminan automáticamente. En mi caso, limpio mi carpeta de Windows Temp semanalmente. Después de ejecutar este script, vi que aproximadamente 45 archivos en la carpeta se redujeron a aproximadamente 20 de los últimos archivos, incluidos todos los archivos en los subdirectorios.
El mantenimiento de las computadoras puede ser un verdadero dolor, y ese trabajo puede ser aún más difícil cuando se tiene el sistema y todo tipos de aplicaciones que escriben constantemente en archivos de registro o que crean archivos temporales basura en la carpeta temporal de Windows. Este script es especialmente útil para los técnicos de TI que pueden ejecutar regularmente trabajos por lotes o scripts en un servidor que todos crean nuevos archivos de registro cada vez que se ejecutan. Al ejecutar un script de Windows que limpia regularmente los archivos de registro más antiguos, puede escribir archivos WSF como el anterior que mantendrá esos directorios de registro agradables y limpios: puede mantener un historial de archivos de registro que desee, pero limpie los archivos realmente antiguos que no lo hagas
¿Puedes pensar en algunos usos creativos para tal script? ¿Limpia manualmente las carpetas temporales y los archivos de registro, y un script como este podría ahorrarle trabajo? Pruébalo y comparte tus pensamientos y comentarios en la sección de comentarios a continuación.
Credito de imagen: Grúa en el depósito de chatarra a través de Shutterstock
Ryan tiene una licenciatura en ingeniería eléctrica. Ha trabajado 13 años en ingeniería de automatización, 5 años en TI y ahora es ingeniero de aplicaciones. Ex editor gerente de MakeUseOf, ha hablado en conferencias nacionales sobre visualización de datos y ha aparecido en la televisión y radio nacionales.