Cómo ejecutar scripts de PowerShell con el Programador de Tareas de Windows – Blog de Flemming

El Programador de Tareas de Windows puede ser una herramienta muy útil para ejecutar tus scripts de PowerShell en el arranque, el inicio de sesión, en un horario u otros eventos.

Este es un tutorial paso a paso sobre cómo puede hacer esto en Windows 10, pero los pasos de esta guía se aplican a todos los sistemas operativos modernos de clientes y servidores de Windows. El Programador de Tareas de Windows es un programa incorporado en Windows por defecto, por lo que no se requiere ninguna instalación de software adicional.

Así es como se hace

  • Inicie el Programador de Tareas de Windows, esto se puede hacer mediante la búsqueda de él, o ejecutando (INICIO+R) taskschd.msc.
  • Haga clic derecho en la Biblioteca del Programador de Tareas y luego seleccione Crear Tarea…. Aparecerá una ventana emergente con las pestañas General, Disparadores, Acciones, Condiciones y Configuración.

En la pestaña «General»

  • En la pestaña General dale un nombre a tu tarea rellenando el campo Nombre.
  • Marque Ejecutar si el usuario está logget on o no en Opciones de seguridad
  • Marque Ejecutar con los más altos privilegios

En la pestaña «Disparadores»

En la pestaña Disparadores tiene muchas opciones para cuando quiere que esta tarea se ejecute, pero en este ejemplo usaré En un horario.

  • Seleccione Nuevo y luego seleccione En un horario en Comenzar la tarea:
  • Aquí puede seleccionar lo que se ajuste a sus necesidades, pero hay dos cosas importantes que recordar. La primera es seleccionar Activado en la parte inferior y la segunda es hacer que la hora y la fecha de inicio estén en el futuro. Si la hora de inicio se pasa cuando se crea la tarea, ésta nunca se ejecutará, y nunca se volverá a ejecutar. Cada vez que se vuelva a configurar la tarea también hay que poner la hora para que sea en el futuro.
  • Haga clic en Aceptar
Ejemplo de activador que se ejecuta cada 10 minutos todos los días

En la pestaña «Acciones»

  • en la pestaña Acción seleccione Nuevo y rellene como sigue:
    Programa/script: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
    Este es el enlace a su archivo powershell.exe, aunque tenga una versión más reciente se encuentra en la carpeta v1.0.
    Añadir argumentos (opcional):
    -noprofile -executionpolicy bypass -file "C:\powershell_script\test.ps1" (sustituir por la ruta al archivo-script).
    El parámetro -noprofile inicia PowerShell sin ningún perfil
    El parámetro -executionpolicy bypass Es saltarse cualquier restricción impuesta por la política de ejecución, esto debería ser seguro si conoces tu código.
    El parámetro -file es para abrir un archivo. (su archivo de script .ps1)
  • Haga clic en Aceptar. Se le pedirá que introduzca las credenciales del usuario que debe ejecutar el script, este usuario debe tener derechos de administrador.

Probando la tarea

Una buena prueba para hacer si quiere ver que funciona es hacer un simple script que de salida a la fecha y hora actual a un archivo de texto.

Get-Date >> "c:\powershell_script\testlogg.txt"
Ejemplo de una ejecución exitosa
Compartir

Deja una respuesta

Tu dirección de correo electrónico no será publicada.