Scripts PowerShell con tareas programadas en Windows Server¶
En esta práctica vamos a ver un ejemplo de como ejecutar scripts de PowerShell con tareas programadas en Windows Server y poder así automatizar tareas. Puentos a realizar:
- La Práctica esta realizada en un Windows Server 2016, se trata de adaptar la práctica a un Windows Server 2019.
- Generar varios temporales con los datos que se quiera, para comprobar que se eliminan con el Powershell, (la condición de eliminación habrá que modificarla para que elimine temporales según las ultimas horas o minutos en los que hayais realizado la práctica).
- Realizar un nuevo informe con las capturas destacables de la práctica.
A continuación el Ejemplo:
- Para empezar se muestra un script realizado en PowerShell, llamado "eliminarfiles.ps1", cuya función será eliminar los ficheros de un directorio que tengan más de 7 días:
- A continuación el directorio que se ha introducido en el script, y se pueden ver los archivos que debe eliminar y los que tiene que dejar:
- Ahora se abre el "
Programador de tareas
", a través del Administrador del servidor:
- Se crea una carpeta llamada "
PoweShell
":
- A continuación dentro de esta carpeta se crea una tarea:
- Se abre el siguiente asistente, y sobre la pestaña "
General
" se configura, un nombre y una descripción para la tarea, que ejecute la tarea con la cuenta de Administrador y la configuramos para Windows Server:
- Sobre la pestaña "
Desencadenadores
" se programarla tarea, para que la realice todos los Domingos a las 16:00 horas:
- Sobre la pestaña "
Acciones
" se indica que inicie un PowerShell y ejecute el script que se ha mostrado anteriormente y que elimina los ficheros con más de 7 días:
- A continuación se pregunta si queremos ejecutar el programa "PowerShell" con los siguientes argumentos, le indicamos que "Sí":
- Se quedaría de la siguiente manera:
- Las "Condiciones" y "Configuración" se dejan por defecto:
- Se podría comprobar que la tarea esta programada:
- Se habilita el "
Historial de todas las tareas
":
- Se ejecuta la tarea manualmente y para verificar que ha eliminado los ficheros con más de 7 días:
- Se puede observar que la tarea se ha completado correctamente y sobre el "Historial" podemos ver los logs de la tarea:
- Se puede ver que se ha eliminado los ficheros del directorio indicado en el script superiores a 7 días: