Planifica el apagado del PC

ShutdownRevisando los posts, me he encontrado con un porrón de entradas «borrador» que nunca he llegado a publicar, vete tú a saber por qué razón. Entre ellas, me he decidido a recuperar esta entrada que escribí a principios del 2009.

Ahí va:
Más de una vez he pensado en que sería una buena idea, planificar el antivirus en las máquinas de la oficina al finalizar la jornada laboral. De esta manera, nadie se podrá quejar de que su máquina le va lenta o que no puede trabajar cuando el antivirus está escaneando. El problema que tiene esto, es que no todos los antivirus vienen con la opción de apagar la máquina automáticamente al finalizar el escaneo, y la opción de dejar las máquinas encendidas las 24h del día ininterrumpidamente no es nada interesante si tenemos en cuenta cuestiones como el ahorro de energía.

Para ello, podemos hacer un script que apague la máquina, y otro script que se encargue de planificar la tarea a una determinada hora. Seguramente haya una mejor forma de hacerlo, pero la que explicaré a continuación funciona a la perfección.

/*Apagado.bat*/
REM Cerramos (-s) el PC con un retraso de 10 segundos (-t 10), forzando el cierre de aplicaciones sin previo aviso (-f) pero mostrando un comentario en pantalla (-c)

shutdown -s -t 10 -f -c «Apagado automático de equipo»

Este script apagado.bat, podríamos planificarlo manualmente desde:
{Inicio}->{Programas}->{Accesorios}->{Herramientas del sistema}->{Tareas programadas}
Agregar tarea programada
Seleccionamos el script anterior
Realizar esta tarea: diariamente
Seleccionamos la hora y si queremos lanzar la tarea únicamente los días laborables o todos los días de la semana
Finalmente, introducimos los credenciales con los que se ejecutará la tarea

Si tenemos muchos PCs, no nos interesará tener que ir PC a PC, manualmente, añadiendo esta planificación, así que para ello, tenemos este segundo script:

/* Planificador.bat */
C:\Windows\system32\schtasks.exe /create /RU DOMAIN\admin /RP AdminPass /SC daily /ST 21:30:00 /TN «Shutdown» /TR C:\apagado.bat

Este script se encargará de crear una tarea planificada llamada «Shutdown» que se ejecutará diariamente a las 21:30, con credenciales DOMAIN\admin, y que llamará al script anterior, apagado.bat.

Únicamente necesitaremos una herramienta de distribución de software para crear un paquete con los dos scripts, que se encargue de primero copiar apagado.bat a C:, y posteriormente ejecute planificador.bat.

Como nota final, dos apuntes: en planificador.bat, podemos añadir al principio una instrucción «copy apagado.bat C:\» para que sea este script el encargado de copiar el planificador.bat a C:\. Finalmente, decir que Windows Home no tiene la utilidad schtasks, así que no podremos usar el script planificador.bat en estos SO.

Fuentes:
http://support.microsoft.com/?kbid=814596
http://technet.microsoft.com/en-us/library/bb490996.aspx
http://wpkg.org/Schtasks_for_XP_Home

Flickr! Foto por cellanr