A menudo, cuando desea programar tareas en Windowspor lo general alcanzará el Windows Utilidad del programador de tareas primero. Sin embargo, es posible utilizar Windows Cmdlets de 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.
¿Por qué usar PowerShell en lugar del Programador de tareas?
Para la mayoría Windows usuarios, 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 cómo ejecutar programas automáticamente utilizando 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 gestió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 muchos sencillos Windows scripts que son fáciles de configurar y, sin embargo, brindan 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 hacerlo, asegúrese de obtener más información sobre cómo 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 Windows Busca y selecciona Ejecutar como administrador.
Debe crear una variable para contener la acción de la tarea. Para hacer esto, escriba: $acción = New-ScheduledTaskAction -Ejecutar ‘PROGRAMA’ y presiona Ingresar. Reemplazar PROGRAMA con el nombre del programa para el que estás creando la tarea.
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.
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 -SETTING -A la HORA. 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. El tiempo puede estar en 12 o formato de 24 horas. Si está utilizando la frecuencia Semanal, también puede agregar -Días de la semanay 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 3ejecutará la tarea cada tres días.
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 TAREAy 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 “TASK-FOLDER” -TaskName “TASK-NAME” -Description “OPTIONAL-DESCRIPTION-TEXT”. 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 Buscar y hacer clic Ejecutar como administrador.
Debe crear una variable para contener los cambios de tareas programadas. Escribe: $trigger = New-ScheduledTaskTrigger -SETTING -A la HORA. Cambio -AJUSTE y -En el momento a la frecuencia y el tiempo que desea establecer para la tarea.
Para cambiar el programa que utiliza la tarea programada, escriba: $acción = New-ScheduledTaskAction -Ejecutar ‘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 “TASK-FOLDER” -TaskName “TASK-NAME”. Reemplazar CARPETA DE TAREAS y NOMBRE DE LA TAREA con detalles de la tarea que desea cambiar.
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-NOMBRE”. 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 “TASK-NAME” -Confirm:$false. Reemplazar NOMBRE DE LA TAREA con el nombre de la tarea que desea eliminar.
Para confirmar que la tarea ha sido eliminada, escriba: Get-ScheduledTask -TaskName “TAREA-NOMBRE”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 arriba.
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.
Puede encontrar una lista completa de todos los cmdlets de tareas programadas de PowerShell en Microsoft Docs.
Creación de tareas programadas en Windows Potencia Shell
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, el poderoso Windows herramienta de automatización, esta guía es un excelente lugar para comenzar.