Cómo crear tareas programadas en Windows PowerShell (y por qué debería hacerlo)

Cómo crear tareas programadas en Windows PowerShell (y por qué debería hacerlo)

A menudo, cuando desee programar tareas en Windows, generalmente buscará primero la utilidad Programador de tareas de Windows. Sin embargo, es posible usar cmdlets de Windows PowerShell para crear, editar y eliminar tareas programadas.





Pero, ¿por qué debería usar PowerShell para programar tareas en lugar de la herramienta Tash Scheduler designada? Vamos a averiguar.





MAKEUSEOF VÍDEO DEL DÍA

¿Por qué usar PowerShell en lugar del Programador de tareas?

Para la mayoría de los usuarios de Windows, es más fácil usar el Programador de tareas para crear tareas programadas simples. Sin embargo, la razón principal para usar PowerShell en lugar del Programador de tareas es principalmente la capacidad de crear un script que interactúe con el sistema a través de una tarea programada.





El Programador de tareas ha sido parte de Windows durante mucho tiempo y puede obtener más información sobre ejecutar programas automáticamente usando el Programador de tareas en nuestra guía. Esto le ayudará a decidir el mejor método para crear tareas programadas para sus necesidades específicas.

¿Qué es un script de PowerShell?

Windows PowerShell es un programa de administración de configuración y automatización de tareas. También incluye un lenguaje de scripting. Los scripts de PowerShell, llamados 'cmdlets', le permiten crear operaciones complejas de múltiples acciones.



Un script de PowerShell podría usarse para algo tan simple como recopilar y presentar información sobre una computadora. Un administrador de red podría crear un script que apague todas las computadoras en una red que no se esté utilizando.

Las secuencias de comandos son las más utilizadas por los administradores de sistemas y redes, pero eso no significa que no pueda crear secuencias de comandos de PowerShell para realizar acciones simples y complejas en su computadora personal. De hecho, hay un montón de guiones simples de Windows que son fáciles de configurar, pero proporcionan una gran cantidad de funciones.





Creación de una tarea programada en PowerShell (elevado)

Deberá abrir PowerShell con privilegios de administrador cuando desee crear tareas programadas. Si no sabe cómo hacer esto, asegúrese de obtener más información sobre iniciar programas con privilegios elevados .

Para abrir PowerShell, haga clic con el botón derecho en el botón del menú Inicio y seleccione PowerShell (Administrador) desde el menú de usuario avanzado. Si no ve esa opción, busque Potencia Shell en la Búsqueda de Windows y seleccione Ejecutar como administrador .





Debe crear una variable para contener la acción de la tarea. Para hacer esto, escriba: $acción = New-ScheduledTaskAction -Execute ' PROGRAMA ' y presiona Ingresar . Reemplazar PROGRAMA con el nombre del programa para el que estás creando la tarea.

  Windows PowerShell mostrando comandos

El nombre de la variable en el comando anterior es la parte $acción. Puede cambiar esto a lo que quiera, pero es mejor que sea breve y descriptivo. También tiene que estar en minúsculas.

¿Cómo funciona la tarjeta sd wifi?

A continuación, cree el disparador para la tarea programada. Esto incluirá un tiempo y una frecuencia de repetición. Para agregar un activador, escriba: $trigger = New-ScheduledTaskTrigger - AJUSTE -A TIEMPO . Reemplazar -AJUSTE con la frecuencia, como Diario. Reemplazar -En el momento con una hora, como 'A las 7 am'.

Puede usar Una vez, Diariamente, Semanalmente o Mensualmente para la frecuencia. La hora puede estar en formato de 12 o 24 horas. Si está utilizando la frecuencia Semanal, también puede agregar -Días de la semana , y luego el día. martes , por ejemplo. También puedes usar -Intervalo de días para controlar la frecuencia. Por ejemplo, - Intervalo de días 3 , ejecutará la tarea cada tres días.

  Crear una tarea programada en PowerShell

Ahora necesita juntar toda la información en un solo comando. En la siguiente línea de comando, reemplace CARPETA DE TAREAS , NOMBRE DE LA TAREA , y TEXTO DE DESCRIPCIÓN OPCIONAL con la información de tu tarea. los -Ruta de tareas es opcional pero le ayuda a identificar sus tareas creadas.

Para crear la tarea programada, escriba: Register-ScheduledTask -Action $action -Trigger $trigger -TaskPath ' CARPETA DE TAREAS ' -Nombre de la tarea ' NOMBRE DE LA TAREA ' -Descripción ' TEXTO DE DESCRIPCIÓN OPCIONAL ' . Prensa Ingresar .

La tarea programada se creará y se activará cuando se alcancen los desencadenantes de frecuencia y tiempo.

Modificar una tarea programada en PowerShell (elevado)

También puede usar PowerShell para modificar una tarea programada creada anteriormente. Puede editar una tarea programada incluso si está actualmente activa. Necesitará saber el nombre de la tarea programada y la ruta de la tarea.

Abra PowerShell con privilegios de administrador buscando en Windows Search y haciendo clic en Ejecutar como administrador .

Debe crear una variable para contener los cambios de tareas programadas. Escribe: $trigger = New-ScheduledTaskTrigger - AJUSTE - En el momento . Cambio -AJUSTE y -En el momento a la frecuencia y el tiempo que desea establecer para la tarea.

  La consola de Windows PowerShell

Para cambiar el programa que utiliza la tarea programada, escriba: $acción = New-ScheduledTaskAction -Execute ' PROGRAMA' . Reemplazar PROGRAMA en el comando con el nombre del programa que desea usar junto con la ruta al archivo .exe.

A continuación, aplique esos cambios a la tarea programada escribiendo: Set-ScheduledTask -Trigger $trigger -Action $action -TaskPath ' CARPETA DE TAREAS ' -Nombre de la tarea ' NOMBRE DE LA TAREA ' . Reemplazar CARPETA DE TAREAS y NOMBRE DE LA TAREA con detalles de la tarea que desea cambiar.

  Edición de una tarea programada en PowerShell

Cómo eliminar tareas programadas en PowerShell

Las tareas programadas creadas en PowerShell también se pueden eliminar en PowerShell.

Abra PowerShell (elevado) y escriba el siguiente comando para confirmar que la tarea existe y está activa: Get-ScheduledTask -TaskName ' TAREA-NAM Y' . Reemplazar NOMBRE DE LA TAREA con el nombre de la tarea que desea eliminar.

Suponiendo que se encuentra la tarea programada, puede eliminarla con el siguiente comando: Unregister-ScheduledTask -TaskName ' NOMBRE DE LA TAREA ' -Confirmar:$falso . Reemplazar NOMBRE DE LA TAREA con el nombre de la tarea que desea eliminar.

  Eliminación de tareas programadas en Windows PowerShell

Para confirmar que la tarea ha sido eliminada, escriba: Get-ScheduledTask -TaskName ' NOMBRE DE LA TAREA ' , reemplazando NOMBRE DE LA TAREA con el nombre de la tarea programada que eliminó.

A continuación, debería ver una advertencia de que no existe ninguna tarea con ese nombre. Si ve detalles de la tarea programada consultada, no se eliminó correctamente. Verifique los detalles que ingresó durante el paso 1 anterior.

Cmdlets adicionales de PowerShell para tareas programadas

Ahora que comprende los conceptos básicos de la creación de tareas programadas en PowerShell, puede experimentar con otros cmdlets.

Hay varias otras formas de controlar las tareas programadas con líneas de comando. Estos incluyen la desactivación temporal de tareas, la exportación de una tarea programada como una cadena XML y la detención de todas las tareas en ejecución.

cómo eliminar un evento en el calendario

Puede encontrar una lista completa de todos los PowerShell cmdlets de tareas programadas en Microsoft Docs .

Creación de tareas programadas en Windows PowerShell

No todos necesitarán usar PowerShell para crear tareas programadas. El Programador de tareas hace un buen trabajo al permitirle programar tareas simples, como abrir aplicaciones. Pero si necesita saber cómo crear tareas programadas en PowerShell, la poderosa herramienta de automatización de Windows, esta guía es un excelente lugar para comenzar.