Contents

Ejecutar un script de PowerShell como tarea programada

Está muy bien ahorrarnos trabajo automatizando procesos con PowerShell, pero si para que éstos se ejecuten tenemos que lanzar la tarea a mano en muchas ocasiones se pierde el sentido de la automatización. Por ello en el post de hoy veremos cómo ejecutar** un script de PowerShell como tarea programada** mediante el programador de tareas de Windows.

/wp-content/uploads/2019/03/Ejecutar-un-script-de-PowerShell-como-tarea-programada.png
Ejecutar un script de PowerShell como tarea programada

Ejecutar script de PowerShell como tarea programada

Pese a que programar una tarea en Windows es algo totalmente trivial, programar la ejecución de un script de PowerShell puede resultar un poco más “complicado” si no sabemos exáctamente como construir la tarea. Para ello nos dirigremos al Programador de tareas de Windows y crearemos una nueva tarea _(_Tarea normal, no básica).

  • En la pestaña “General” damos nombre a la tarea y seleccionamos “Ejecutar tanto si el usuario inició sesión como si no” y, en caso de que nuestro script requiera permisos de administrador, seleccionaremos “Ejecutar con los privilegios más altos”.
  • En la pestaña “Desencadenadores” indicaremos cuándo ejecutar la tarea.
  • En la pestaña “Acciones” es donde realmente empieza la parte que afecta directamente a la programación de un script de Powershell:
  • En “Acción” seleccionamos “Iniciar un programa”.
  • En “Programa o script” escribimos:
1
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
  • En “Agregar argumentos” escribimos:
1
-command “Path_Del_Script\Nombre_Del_Script.ps1”

(Importante que esté entre comillas)

Poniéndolo todo junto debería quedar algo así:

/wp-content/uploads/2018/04/TareaPowershell.png
Programar un script de PowerShell

Con esto hecho sólo nos queda ejecutar la tarea haciendo “botón derecho > Ejecutar” en la propia tarea y, si todo ha ido bien, deberíamos ver un mensaje indicando que la tarea se ha completado correctamente.

/wp-content/uploads/2018/04/Completed_Task.png
Tarea completada

Esta utilidad es ideal para combinarla con el envío de correo mediante PowerShell, y con ello, generar scripts de reporting o de automatización de tareas rutinarias que se ejecuten bajo una programación y nos envíen el resultado directo a nuestra bandeja de correo.