Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Programa una tarea.
Syntax
schtasks /create /sc <scheduletype> /tn <taskname> /tr <taskrun> [/s <computer> [/u [<domain>\]<user> [/p <password>]]] [/ru {[<domain>\]<user> | system}] [/rp <password>] [/mo <modifier>] [/d <day>[,<day>...] | *] [/m <month>[,<month>...]] [/i <idletime>] [/st <starttime>] [/ri <interval>] [{/et <endtime> | /du <duration>} [/k]] [/sd <startdate>] [/ed <enddate>] [/it] [/np] [/z] [/xml <xmlfile>] [/v1] [/f] [/rl <level>] [/delay <delaytime>] [/hresult]
Parameters
| Parameter | Description |
|---|---|
/Sc <scheduletype> |
Especifica el tipo de programación. Los valores válidos incluyen:
|
/Tn <taskname> |
Especifica un nombre para la tarea. Cada tarea del sistema debe tener un nombre único y debe cumplir las reglas para los nombres de archivo, sin superar los 238 caracteres. Use comillas para incluir nombres que incluyan espacios. Para almacenar la tarea programada en una carpeta diferente, ejecute /tn<folder name\task name>. |
/Tr <Taskrun> |
Especifica el programa o comando que ejecuta la tarea. Escriba la ruta de acceso completa y el nombre de archivo de un archivo ejecutable, un archivo de script o un archivo por lotes. El nombre de la ruta de acceso no debe superar los 262 caracteres. Si no agrega la ruta, schtasks asume que el archivo está en el <systemroot>\System32 directorio. |
/s <computer> |
Especifica el nombre o la dirección IP de un equipo remoto (con o sin barras diagonales inversas). La opción predeterminada es el equipo local. |
/u [<domain>] |
Ejecuta este comando con los permisos de la cuenta de usuario especificada. El valor predeterminado corresponde a los permisos del usuario actual del equipo local. Los parámetros /u y /p solo son válidos cuando se usa /s. Los permisos de la cuenta especificada se usan para programar y ejecutar la tarea. Para ejecutar la tarea con los permisos de un usuario diferente, use el parámetro /ru . La cuenta de usuario debe ser miembro del grupo Administradores en el equipo remoto. Además, el equipo local debe estar en el mismo dominio que el equipo remoto o debe estar en un dominio de confianza para el dominio de equipo remoto. |
/p <password> |
Especifica la contraseña de la cuenta de usuario especificada en el parámetro /u . Si usa el parámetro /u sin el parámetro /p o el argumento password, schtasks le pedirá una contraseña. Los parámetros /u y /p solo son válidos cuando se usa /s. |
/ru {[<domain>]<user> | system} |
Ejecuta la tarea con permisos de la cuenta de usuario especificada. De forma predeterminada, la tarea se ejecuta con los permisos del usuario actual del equipo local o con el permiso del usuario especificado por el parámetro /u , si se incluye uno. El parámetro /ru es válido al programar tareas en equipos locales o remotos. Las opciones válidas incluyen:
|
/Rp <password> |
Especifica la contraseña de la cuenta de usuario existente o la cuenta de usuario especificada por el parámetro /ru . Si no usa este parámetro al especificar una cuenta de usuario, SchTasks.exe le pedirá la contraseña la próxima vez que inicie sesión. No use el parámetro /rp para tareas que se ejecutan con credenciales de cuenta del sistema (/ru System). La cuenta del sistema no tiene una contraseña y SchTasks.exe no solicita una. |
/Mo <modifiers> |
Especifica la frecuencia con la que se ejecuta la tarea dentro de su tipo de programación. Las opciones válidas incluyen:
|
| /d DAY[,DAY...] | Especifica la frecuencia con la que se ejecuta la tarea dentro de su tipo de programación. Las opciones válidas incluyen:
|
| /m MONTH[,MONTH...] | Especifica un mes o meses del año durante el cual se debe ejecutar la tarea programada. Las opciones válidas incluyen JAN - DEC y * (cada mes). El parámetro /m solo es válido con una programación MENSUAL. Es necesario cuando se usa el modificador LASTDAY. De lo contrario, es opcional y el valor predeterminado es * (cada mes). |
/Yo <Idletime> |
Especifica cuántos minutos está inactivo el equipo antes de que se inicie la tarea. Un valor válido es un número entero de 1 a 999. Este parámetro solo es válido con una programación de tipo ONIDLE y, a continuación, es necesario. |
/c <Starttime> |
Especifica la hora de inicio de la tarea, para lo que se utiliza el formato de hora de 24 horas, HH:mm. El valor predeterminado es la hora actual del equipo local. El parámetro /st es válido con programaciones MINUTE, HOURLY, DAILY, WEEKLY, MONTHLY y ONCE. Es necesario para una programación ONCE. |
/Ri <interval> |
Especifica el intervalo de repetición de la tarea programada, en minutos. Esto no es aplicable para los tipos de programación MINUTE, HOURLY, ONSTART, ONLOGON,ONIDLE y ONEVENT. El intervalo válido es de 1 a 599940 (599940 minutos = 9999 horas). Si se especifican los parámetros /et o /du , el valor predeterminado es 10 minutos. |
/Et <endtime> |
Especifica la hora del día a la que finaliza una programación de tareas por minuto u hora en formato de 24 horas <HH:MM>. Después de la hora de finalización especificada, schtasks no vuelve a iniciar la tarea hasta que se repite la hora de inicio. De forma predeterminada, las programaciones de tareas no tienen ninguna hora de finalización. Este parámetro es opcional y válido solo con una programación de tipo MINUTE u HOURLY. |
/Du <duration> |
Especifica un período máximo de tiempo durante una programación por minuto o por hora en formato de 24 horas <HHHH:MM>. Una vez transcurrida la hora especificada, schtasks no vuelve a iniciar la tarea hasta que se repite la hora de inicio. De forma predeterminada, las programaciones de tareas no tienen duración máxima. Este parámetro es opcional y válido solo con una programación de tipo MINUTE u HOURLY. |
| /k | Detiene el programa que ejecuta la tarea a la hora especificada por /et o /du. Sin /k, schtasks no vuelve a iniciar el programa después de que alcanza el tiempo especificado por /et o /du ni detiene el programa si todavía se está ejecutando. Este parámetro es opcional y válido solo con una programación de tipo MINUTE u HOURLY. |
/Sd <Startdate> |
Especifica la fecha en la que se inicia la programación de la tarea. El valor predeterminado es la fecha actual del equipo local. El formato de Startdate varía según la configuración regional seleccionada para el equipo local en Opciones regionales y de idioma. Solo un formato es válido para cada configuración regional. Los formatos de fecha válidos incluyen (asegúrese de elegir el formato más similar al formato seleccionado para Fecha corta en Opciones regionales y de idioma en el equipo local):
|
/Ed <Enddate> |
Especifica la fecha en la que finaliza la programación. Este parámetro es opcional. No es válido en una programación de tipo ONCE, ONSTART, ONLOGON, ONIDLE u ONEVENT. De forma predeterminada, las programaciones no tienen fecha de finalización. El valor predeterminado es la fecha actual del equipo local. El formato de Enddate varía según la configuración regional seleccionada para el equipo local en Opciones regionales y de idioma. Solo un formato es válido para cada configuración regional. Los formatos de fecha válidos incluyen (asegúrese de elegir el formato más similar al formato seleccionado para Fecha corta en Opciones regionales y de idioma en el equipo local):
|
/EC <channelname> |
Especifica el nombre del canal de eventos desencadenado por el tipo de programación ONEVENT que coincide con los criterios de un registro de eventos del sistema. |
| /it | Especifica que se ejecute la tarea programada solo cuando Ejecutar como usuario (la cuenta de usuario en la que se ejecuta la tarea) haya iniciado sesión en el equipo. Este parámetro no tiene ningún efecto en las tareas que se ejecutan con permisos del sistema o en las tareas que ya tienen establecida la propiedad interactive-only. No se puede usar un comando change para quitar la propiedad interactive-only de una tarea. De forma predeterminada, ejecutar como usuario es el usuario actual del equipo local cuando se programa la tarea o la cuenta especificada por el parámetro /u , si se usa una. Sin embargo, si el comando incluye el parámetro /ru , el usuario de ejecución es la cuenta especificada por el parámetro /ru . |
| /np | No se almacena ninguna contraseña. La tarea se ejecuta de forma no interactiva como el usuario especificado. Solo están disponibles los recursos locales. |
| /z | Especifica la eliminación de la tarea tras la finalización de su programación. |
/XML <xmlfile> |
Crea una tarea especificada en el archivo XML. Se puede combinar con los parámetros /ru y /rp , o con el parámetro /rp por sí solo si el archivo XML ya contiene la información de la cuenta de usuario. |
| /v1 | Crea una tarea visible para los sistemas operativos anteriores a Vista. Esto no es compatible con el parámetro /XML . |
| /f | Especifica la creación de la tarea y la supresión de las advertencias si la tarea especificada ya existe. |
/Rl <level> |
Especifica el nivel de ejecución del trabajo. Los valores aceptables son LIMITED (las tareas programadas se ejecutarán con el menor nivel de privilegios, como las cuentas de usuario estándar) y HIGHEST (las tareas programadas se ejecutarán con el nivel más alto de privilegios, como las cuentas de superusuario). El valor predeterminado es Limitado. |
/demorar <delaytime> |
Especifica el tiempo de espera para retrasar la ejecución de la tarea después de desencadenarse en formato mmmm:ss. Esto solo es válido para los tipos de programación ONSTART, ONLOGON y ONEVENT. |
| /hresult | Especifica que el código de salida del proceso esté en formato HRESULT. |
| /? | Muestra la ayuda en el símbolo del sistema. |
Programación de una tarea para que se ejecute cada <n> minutos
En una programación de minutos, se requiere el parámetro de minuto /sc . El parámetro /mo (modificador) es opcional y especifica el número de minutos entre cada ejecución de la tarea. El valor predeterminado de /mes es 1 (cada minuto). Los parámetros /et (hora de finalización) y /du (duración) son opcionales y se pueden usar con o sin el parámetro /k (tarea final).
Examples
Para programar un script de seguridad, Sec.vbs, para que se ejecute cada 20 minutos, escriba:
schtasks /create /sc minute /mo 20 /tn "Security Script" /tr \\central\data\scripts\sec.vbsDado que en este ejemplo no se incluye una fecha u hora de inicio, la tarea se inicia 20 minutos después de que se complete el comando y se ejecuta cada 20 minutos después de que se ejecute el sistema. Observe que el archivo de origen del script de seguridad se encuentra en un equipo remoto, pero que la tarea está programada y se ejecuta en el equipo local.
Para programar un script de seguridad, Sec.vbs, para que se ejecute en el equipo local cada 100 minutos entre las 5:00 p.m. y las 7:59 a.m. cada día, escriba:
schtasks /create /tn "Security Script" /tr sec.vbs /sc minute /mo 100 /st 17:00 /et 08:00 /kEn este ejemplo se usa el parámetro /sc para especificar una programación de minutos y el parámetro /mo para especificar un intervalo de 100 minutos. Usa los parámetros /st y /et para especificar la hora de inicio y la hora de finalización de la programación de cada día. También usa el parámetro /k para detener el script si todavía se está ejecutando a las 7:59 a.m. Sin /k, schtasks no iniciaría el script después de las 7:59 a.m., pero si la instancia iniciada a las 6:20 a.m. todavía se estaba ejecutando, no la detendría.
Programación de una tarea para que se ejecute cada <n> horas
En una programación horaria, se requiere el parámetro horario /sc . El parámetro /mo (modificador) es opcional y especifica el número de horas entre cada ejecución de la tarea. El valor predeterminado para /mes es 1 (cada hora). El parámetro /k (finalizar tarea) es opcional y se puede usar con /et (finalizar a la hora especificada) o /du (finalizar después del intervalo especificado).
Examples
Para programar el programa MyApp para que se ejecute cada cinco horas, a partir del primer día de marzo de 2002, escriba:
schtasks /create /sc hourly /mo 5 /sd 03/01/2002 /tn MyApp /tr c:\apps\myapp.exeEn este ejemplo, el equipo local usa la opción Inglés (Zimbabue) en Opciones regionales y de idioma, por lo que el formato de la fecha de inicio es MM/DD/AAAA (03/01/2002).
Para programar la aplicación MyApp se ejecute cada hora, a partir de cinco minutos pasada la medianoche, escriba:
schtasks /create /sc hourly /st 00:05 /tn MyApp /tr c:\apps\myapp.exePara programar la aplicación MyApp para que se ejecute cada 3 horas, durante un total de 10 horas, escriba:
schtasks /create /tn MyApp /tr MyApp.exe /sc hourly /mo 3 /st 00:00 /du 0010:00En este ejemplo, la tarea se ejecuta a las 12:00 a. m., 3:00 a. m., 6:00 a. m. y 9:00 a. m. Dado que la duración es de 10 horas, la tarea no se vuelve a ejecutar a las 12:00 p. m. En su lugar, comienza de nuevo a las 12:00 a. m. el día siguiente. Además, dado que el programa se ejecuta durante solo unos minutos, el parámetro /k , que detiene el programa si todavía se está ejecutando cuando expira la duración, no es necesario.
Programación de una tarea que se ejecute cada <n> días
En una programación diaria, se requiere el parámetro diario /sc . El parámetro /mo (modificador) es opcional y especifica el número de días entre cada ejecución de la tarea. El valor predeterminado para /mes es 1 (todos los días).
Examples
Para programar la aplicación MyApp para que se ejecute una vez al día, todos los días, a las 8:00 a. m. hasta el 31 de diciembre de 2021, escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc daily /st 08:00 /ed 31/12/2021En este ejemplo, el sistema de equipo local se establece en la opción Inglés (Reino Unido) en Configuración regional y de idioma, por lo que el formato de la fecha de finalización es DD/MM/AAAA (31/12/2021). Además, dado que este ejemplo no incluye el parámetro /mo , se usa el intervalo predeterminado de 1 para ejecutar el comando todos los días.
Para programar la aplicación MyApp para que se ejecute cada doce días a las 1:00 p. m. (13:00) a partir del 31 de diciembre de 2021, escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc daily /mo 12 /sd 12/31/2002 /st 13:00En este ejemplo, el sistema está configurado en la opción Inglés (Zimbabue) en Opciones regionales y de idioma, por lo que el formato de la fecha de finalización es MM/DD/AAAA (31/12/2021).
Para programar un script de seguridad, Sec.vbs, para que se ejecute cada 70 días, escriba:
schtasks /create /tn "Security Script" /tr sec.vbs /sc daily /mo 70 /itEn este ejemplo, el parámetro /it se usa para especificar que la tarea se ejecuta solo cuando el usuario en cuya cuenta se ejecuta la tarea ha iniciado sesión en el equipo. Dado que la tarea se ejecuta con los permisos de una cuenta de usuario específica, esta tarea solo se ejecuta cuando ese usuario ha iniciado sesión.
Note
Para identificar tareas con la propiedad de solo interacción (/it), use una consulta detallada (/query /v). En una visualización de consulta detallada de una tarea con /it, el campo Modo de inicio de sesión tiene un valor de Solo interactivo.
Programación de una tarea que se ejecute cada <n> semanas
En una programación semanal, se requiere el parámetro semanal /sc . El parámetro /mo (modificador) es opcional y especifica el número de semanas entre cada ejecución de la tarea. El valor predeterminado para /mes es 1 (cada semana).
Las programaciones semanales también tienen un parámetro /d opcional para programar la tarea para que se ejecute en días específicos de la semana o en todos los días (). El valor predeterminado es MON (lunes). La opción diaria () es equivalente a programar una tarea diariamente.
Examples
Para programar la aplicación MyApp para que se ejecute en un equipo remoto cada seis semanas, escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc weekly /mo 6 /s Server16 /u Admin01Dado que en este ejemplo se omite el parámetro /d , la tarea se ejecuta los lunes. En este ejemplo también se usa el parámetro /s para especificar el equipo remoto y el parámetro /u para ejecutar el comando con los permisos de la cuenta de administrador del usuario. Además, dado que el parámetro /p se omite, SchTasks.exe solicita al usuario la contraseña de la cuenta de administrador y, dado que el comando se ejecuta de forma remota, todas las rutas de acceso del comando, incluida la ruta de acceso a MyApp.exe, hacen referencia a las rutas de acceso del equipo remoto.
Para programar una tarea que se ejecute cada dos viernes, escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc weekly /mo 2 /d FRIEn este ejemplo se usa el parámetro /mo para especificar el intervalo de dos semanas y el parámetro /d para especificar el día de la semana. Para programar una tarea que se ejecute todos los viernes, omita el parámetro /mo o establézcalo en 1.
Programación de una tarea para que se ejecute cada <n> meses
En este tipo de programación, se requiere el parámetro mensual /sc . El parámetro /mo (modificador), que especifica el número de meses entre cada ejecución de la tarea, es opcional y el valor predeterminado es 1 (cada mes). Este tipo de programación también tiene un parámetro /d opcional para programar la tarea para que se ejecute en una fecha especificada del mes. El valor predeterminado es 1 (el primer día del mes).
Examples
Para programar la aplicación MyApp para que se ejecute el primer día de cada mes, escriba:
schtasks /create /tn MyApp /tr myapp.exe /sc monthlyEl valor predeterminado para el parámetro /mo (modificador) y el parámetro /d (día) es 1, por lo que no es necesario usar ninguno de esos parámetros para este ejemplo.
Para programar la aplicación MyApp para que se ejecute cada tres meses, escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly /mo 3En este ejemplo se usa el parámetro /mo para especificar un intervalo de 3 meses.
Para programar la aplicación MyApp para que se ejecute cada dos meses el día 21 del mes a medianoche durante un año, desde el 2 de julio de 2002 hasta el 30 de junio de 2003, escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly /mo 2 /d 21 /st 00:00 /sd 2002/07/01 /ed 2003/06/30En este ejemplo se usa el parámetro /mo para especificar el intervalo mensual (cada dos meses), el parámetro /d para especificar la fecha, el parámetro /st para especificar la hora y los parámetros /sd y /ed para especificar la fecha de inicio y la fecha de finalización, respectivamente. También en este ejemplo, el equipo local se establece en la opción Inglés (Sudáfrica) en Configuración regional y de idioma, por lo que las fechas se especifican en el formato local, AAAA/MM/DD.
Programación de una tarea para que se ejecute en un día específico de la semana
El día de la programación de la semana es una variación de la programación semanal. En una programación semanal, se requiere el parámetro semanal /sc . El parámetro /mo (modificador) es opcional y especifica el número de semanas entre cada ejecución de la tarea. El valor predeterminado para /mes es 1 (cada semana). El parámetro /d , que es opcional, programa la tarea para que se ejecute en los días especificados de la semana o en todos los días (*). El valor predeterminado es MON (lunes). La opción diaria (/d *) es equivalente a programar una tarea diariamente.
Examples
Para programar la aplicación MyApp para que se ejecute cada semana el miércoles, escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc weekly /d WEDEn este ejemplo se usa el parámetro /d para especificar el día de la semana. Dado que el comando omite el parámetro /mo , la tarea se ejecuta todas las semanas.
Para programar una tarea para que se ejecute el lunes y el viernes de cada octava semana, escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc weekly /mo 8 /d MON,FRIEn este ejemplo se usa el parámetro /d para especificar los días y el parámetro /mo para especificar el intervalo de ocho semanas.
Programación de una tarea para que se ejecute en una semana específica del mes
En este tipo de programación, se requieren el parámetro mensual /sc , el parámetro /mo (modificador) y el parámetro /d (día). El parámetro /mo (modificador) especifica la semana en la que se ejecuta la tarea. El parámetro /d especifica el día de la semana. Solo puede especificar un día de la semana para este tipo de programación. Esta programación también tiene un parámetro opcional /m (mes) que le permite programar la tarea para meses particulares o cada mes (*). El valor predeterminado para el parámetro /m es cada mes (*).
Examples
Para programar la aplicación MyApp para que se ejecute el segundo domingo de cada mes, escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly /mo SECOND /d SUNEn este ejemplo se usa el parámetro /mo para especificar la segunda semana del mes y el parámetro /d para especificar el día.
Para programar la aplciación MyApp para que se ejecute el primer lunes de marzo y septiembre, escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly /mo FIRST /d MON /m MAR,SEPEn este ejemplo se usa el parámetro /mo para especificar la primera semana del mes y el parámetro /d para especificar el día. Usa el parámetro /m para especificar el mes, separando los argumentos del mes con una coma.
Programación de una tarea para que se ejecute en un día específico cada mes
En este tipo de programación, se requieren el parámetro mensual /sc y el parámetro /d (día). El parámetro /d especifica una fecha del mes (1 - 31), no un día de la semana, y solo puede especificar un día en la programación. El parámetro /m (mes) es opcional, siendo el valor predeterminado every month (), mientras que el parámetro /mo (modificador) no es válido con este tipo de programación.
Schtasks.exe no le permitirá programar una tarea para una fecha que no esté en un mes especificado por el parámetro /m . Por ejemplo, intentando programar el día 31 de febrero. Sin embargo, si no usa el parámetro /m y programa una tarea para una fecha que no aparece en todos los meses, la tarea no se ejecutará en los meses más cortos. Para programar una tarea para el último día del mes, use el tipo de programación del último día.
Examples
Para programar la aplicación MyApp para que se ejecute el primer día de cada mes, escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthlyDado que el modificador predeterminado es none (sin modificador), este comando usa el día predeterminado de 1 y el mes predeterminado de cada mes, sin necesidad de ningún parámetro adicional.
Para programar la aplicación MyApp para que se ejecute el 15 de mayo y el 15 de junio a las 3:00 p. m. (15:00), escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly /d 15 /m MAY,JUN /st 15:00En este ejemplo se usa el parámetro /d para especificar la fecha y el parámetro /m para especificar los meses. También usa el parámetro /st para especificar la hora de inicio.
Programación de una tarea para que se ejecute el último día de un mes
En el tipo de programación del último día, se requieren el parámetro mensual /sc , el parámetro /mo LASTDAY (modificador) y el parámetro /m (mes). El parámetro /d (día) no es válido.
Examples
Para programar la aplicación MyApp para que se ejecute el último día de cada mes, escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly /mo lastday /m *En este ejemplo se usa el parámetro /mo para especificar el último día y el parámetro /m con el carácter comodín (*) para indicar que el programa se ejecuta todos los meses.
Para programar la aplicación MyApp para que se ejecute el último día de febrero y el último día de marzo a las 6:00 p. m., escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly /mo lastday /m FEB,MAR /st 18:00En este ejemplo se usa el parámetro /mo para especificar el último día, el parámetro /m para especificar los meses y el parámetro /st para especificar la hora de inicio.
Programación para una sola ejecución
En el tipo de programación de ejecución única, se requiere el parámetro /sc once . El parámetro /st , que especifica el tiempo que se ejecuta la tarea, es obligatorio. El parámetro /sd , que especifica la fecha en que se ejecuta la tarea, es opcional, mientras que los parámetros /mo (modificador) y /ed (fecha de finalización) no son válidos.
Schtasks no le permitirá programar una tarea para que se ejecute una vez si la fecha y hora especificadas son pasadas, para lo cual se utiliza la hora del equipo local como referencia. Para programar una tarea para que se ejecute una vez en un equipo remoto en una zona horaria diferente, debe programarla antes de que se produzca esa fecha y hora en dicho equipo.
Example
Para programar la aplicación MyApp para que se ejecute a medianoche el 1 de enero de 2003, escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc once /sd 01/01/2003 /st 00:00En este ejemplo se usa el parámetro /sc para especificar el tipo de programación y los parámetros /sd y /st para especificar la fecha y la hora. También en este ejemplo, el equipo local usa la opción Inglés (Estados Unidos) en Configuración regional y de idioma, por lo que el formato de la fecha de inicio es MM/DD/AAAA.
Programación de una tarea que se ejecute cada vez que se inicie el sistema
En el tipo de programación de inicio, se requiere el parámetro /sc onstart . El parámetro /sd (fecha de inicio) es opcional y el valor predeterminado es la fecha actual.
Example
Para programar la aplicación MyApp para que se ejecute cada vez que se inicie el sistema, escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc onstartEn este ejemplo, el equipo local usa la opción Inglés (Estados Unidos) en Configuración regional y de idioma, por lo que el formato de la fecha de inicio es MM/DD/AAAA.
Programación de una tarea para que se ejecute cuando un usuario inicia sesión
El tipo de programación para el inicio de sesión programa una tarea que se ejecuta cada vez que cualquier usuario inicia sesión en el equipo. En el tipo de programación de inicio de sesión, se requiere el parámetro /sc onlogon . El parámetro /sd (fecha de inicio) es opcional y el valor predeterminado es la fecha actual.
Example
Para programar una tarea para que se ejecute cuando un usuario inicia sesión en un equipo remoto, escriba:
schtasks /create /tn "Start Web Site" /tr c:\myiis\webstart.bat /sc onlogon /s Server23En este ejemplo se programa un archivo por lotes para que se ejecute cada vez que un usuario (cualquier usuario) inicia sesión en el equipo remoto. Usa el parámetro /s para especificar el equipo remoto. Dado que el comando es remoto, todas sus rutas de acceso, incluida la ruta de acceso al archivo por lotes, hacen referencia a una ruta de acceso en el equipo remoto.
Programación de una tarea para que se ejecute cuando el sistema está inactivo
El tipo de programación en reposo programa una tarea que se ejecuta siempre que no haya actividad del usuario durante el tiempo especificado por el parámetro /i . En el tipo de programación en reposo, se requieren el parámetro /sc onidle y el parámetro /i . El /sd (fecha de inicio) es opcional y el valor predeterminado es la fecha actual.
Example
Para programar la aplicación MyApp para que se ejecute siempre que el equipo esté inactivo, escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc onidle /i 10En este ejemplo se usa el parámetro /i necesario para especificar que el equipo debe permanecer inactivo durante diez minutos antes de que se inicie la tarea.
Programación de una tarea para que se ejecute ahora
Schtasks no tiene una opción Ejecutar ahora, pero puede simular esa opción mediante la creación de una tarea que se ejecuta una vez y se inicia en unos minutos.
Example
Para programar una tarea que se ejecute una vez, el 13 de noviembre de 2020 a las 2:18 p. m., hora local, escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc once /st 14:18 /sd 11/13/2002En este ejemplo, el equipo local usa la opción Inglés (Estados Unidos) en Configuración regional y de idioma, por lo que el formato de la fecha de inicio es MM/DD/AAAA.
Programación de una tarea para que se ejecute con permisos diferentes
Puede programar tareas de todos los tipos para que se ejecuten con permisos de una cuenta alternativa tanto en el equipo local como en el remoto. Además de los parámetros necesarios para el tipo de programación concreto, se requiere el parámetro /ru y el parámetro /rp es opcional.
Examples
Para ejecutar la aplciación MyApp en el equipo local, escriba:
schtasks /create /tn MyApp /tr myapp.exe /sc weekly /d TUE /ru Admin06En este ejemplo se usa el parámetro /ru para especificar que la tarea debe ejecutarse con los permisos de la cuenta de administrador del usuario (Admin06). También en este ejemplo la tarea se programa para ejecutarse todos los martes, pero se puede usar cualquier tipo de programación para una ejecución de la tarea con permisos alternativos.
En respuesta, SchTasks.exe solicita la contraseña de ejecución para la cuenta Admin06 y, a continuación, muestra un mensaje de éxito:
Please enter the run as password for Admin06: ******** SUCCESS: The scheduled task MyApp has successfully been created.Para ejecutar el programa MyApp en el equipo de Marketing cada cuatro días, escriba:
schtasks /create /tn MyApp /tr myapp.exe /sc daily /mo 4 /s Marketing /u Marketing\Admin01 /ru Reskits\User01En este ejemplo se usa el parámetro /sc para especificar una programación diaria y el parámetro /mo para especificar un intervalo de cuatro días. Además, en este ejemplo se usa el parámetro /s para proporcionar el nombre del equipo remoto y el parámetro /u para especificar una cuenta con permiso para programar una tarea en el equipo remoto (Admin01 en el equipo de marketing). Por último, en este ejemplo se usa el parámetro /ru para especificar que la tarea debe ejecutarse con los permisos de la cuenta que no es de administrador del usuario (User01 en el dominio Reskits ). Sin el parámetro /ru , la tarea se ejecutaría con los permisos de la cuenta especificada por /u.
Al ejecutar este ejemplo, Schtasks solicita primero la contraseña del usuario nombrado por el parámetro /u (para ejecutar el comando) y luego solicita la contraseña del usuario nombrado por el parámetro /ru (para ejecutar la tarea). Después de autenticar las contraseñas, schtasks muestra un mensaje que indica que la tarea está programada:
Type the password for Marketing\Admin01:******** Please enter the run as password for Reskits\User01: ******** SUCCESS: The scheduled task MyApp has successfully been created.Para ejecutar programar el programa AdminCheck.exe para que se ejecute en el equipo público todos los viernes a las 4:00 a.m., pero solo si el administrador del equipo ha iniciado sesión, escriba:
schtasks /create /tn "Check Admin" /tr AdminCheck.exe /sc weekly /d FRI /st 04:00 /s Public /u Domain3\Admin06 /ru Public\Admin01 /itEn este ejemplo se usa el parámetro /sc para especificar una programación semanal, el parámetro /d para especificar el día y el parámetro /st para especificar la hora de inicio. También usa el parámetro /s para proporcionar el nombre del equipo remoto, el parámetro /u para especificar una cuenta con permiso para programar una tarea en el equipo remoto, el parámetro /ru para configurar la tarea para que se ejecute con los permisos del administrador del equipo público (Public\Admin01) y el parámetro /it para indicar que la tarea solo se ejecuta cuando la cuenta Public\Admin01 ha iniciado sesión.
Note
Para identificar tareas con la propiedad interactive-only (/it), use una consulta detallada (
/query /v). En una visualización de consulta detallada de una tarea con /it, el campo Modo de inicio de sesión tiene un valor de Solo interactivo.
Programación de una tarea para que se ejecute con permisos del sistema
Las tareas de todo tipo se pueden ejecutar con permisos de la cuenta del sistema tanto en el equipo local como en uno remoto. Además de los parámetros necesarios para el tipo de programación concreto, se requiere el parámetro /ru system (o /ru), mientras que el parámetro /rp no es válido.
Important
La cuenta del sistema no tiene derechos de inicio de sesión interactivos. Los usuarios no pueden ver programas o tareas que se ejecutan con permisos del sistema ni interactuar con dichos programas o tareas. El parámetro /ru determina los permisos bajo los cuales se ejecuta la tarea, no los permisos utilizados para programar la tarea. Solo los administradores pueden programar tareas, independientemente del valor del parámetro /ru .
Para identificar las tareas que se ejecutan con permisos del sistema, use una consulta detallada (/query /v). En una visualización de consulta detallada de una tarea de ejecución del sistema, el campo Ejecutar como usuario tiene un valor de NT AUTHORITY\SYSTEM y el campo Modo de inicio de sesión tiene un valor de Solo en segundo plano.
Examples
Para programar el programa MyApp para que se ejecute en el equipo local con permisos de la cuenta del sistema , escriba:
schtasks /create /tn MyApp /tr c:\apps\myapp.exe /sc monthly /d 15 /ru SystemEn este ejemplo, la tarea está programada para ejecutarse en el decimoquinto día de cada mes, pero puede usar cualquier tipo de programación para una ejecución de tareas con permisos del sistema. Además, en este ejemplo se usa el parámetro System /ru para especificar el contexto de seguridad del sistema. Dado que las tareas del sistema no usan una contraseña, el parámetro /rp se omite.
En respuesta, SchTasks.exe muestra un mensaje informativo y un mensaje de operación correcta, sin solicitar una contraseña:
INFO: The task will be created under user name (NT AUTHORITY\SYSTEM). SUCCESS: The Scheduled task MyApp has successfully been created.Para programar el programa MyApp para que se ejecute en el equipo Finance01 todas las mañanas a las 4:00 a.m., con los permisos del sistema, escriba:
schtasks /create /tn MyApp /tr myapp.exe /sc daily /st 04:00 /s Finance01 /u Admin01 /ru SystemEn este ejemplo se usa el parámetro /tn para asignar un nombre a la tarea y el parámetro /tr para especificar la copia remota del programa MyApp, el parámetro /sc para especificar una programación diaria, pero se omite el parámetro /mo porque 1 (todos los días) es el valor predeterminado. En este ejemplo también se usa el parámetro /st para especificar la hora de inicio, que también es la hora a la que se ejecutará la tarea cada día, el parámetro /s para proporcionar el nombre del equipo remoto, el parámetro /u para especificar una cuenta con permiso para programar una tarea en el equipo remoto y el parámetro /ru para especificar que la tarea debe ejecutarse en la cuenta del sistema. Sin el parámetro /ru , la tarea se ejecutaría con los permisos de la cuenta especificada por el parámetro /u .
Schtasks.exe solicita la contraseña del usuario nombrado por el parámetro /u y, después de autenticar la contraseña, muestra un mensaje que indica que la tarea se ha creado y que se ejecutará con permisos de la cuenta del sistema :
Type the password for Admin01:********** INFO: The Schedule Task MyApp will be created under user name (NT AUTHORITY\ SYSTEM). SUCCESS: The scheduled task MyApp has successfully been created.
Programación de una tarea para que ejecute más de un programa
Cada tarea ejecuta solo un programa. Sin embargo, puede crear un archivo por lotes que ejecute varios programas y, a continuación, programar una tarea para ejecutar dicho archivo.
Con un editor de texto, como Bloc de notas, cree un archivo por lotes que incluya el nombre y la ruta de acceso completa al archivo .exe necesario para iniciar los programas Visor de eventos (Eventvwr.exe) y Monitor de sistema (Perfmon.exe).
C:\Windows\System32\Eventvwr.exe C:\Windows\System32\Perfmon.exeGuarde el archivo como MyApps.bat, abra schtasks.exey, a continuación, cree una tarea para ejecutar MyApps.bat escribiendo:
schtasks /create /tn Monitor /tr C:\MyApps.bat /sc onlogon /ru Reskit\AdministratorEste comando crea la tarea Monitor, que se ejecuta cada vez que alguien inicia sesión. Usa el parámetro /tn para asignar un nombre a la tarea, el parámetro /tr para ejecutar MyApps.bat, el parámetro /sc para indicar el tipo de programación OnLogon y el parámetro /ru para ejecutar la tarea con los permisos de la cuenta de administrador del usuario.
El resultado de este comando es que, cada vez que un usuario inicia sesión en el equipo, la tarea se inicia tanto en Visor de eventos como en Monitor de sistema.
Programación de una tarea para que se ejecute en un equipo remoto
Para programar una tarea para que se ejecute en un equipo remoto, debe agregarla a la programación de dicho equipo. Las tareas de todos los tipos se pueden programar en un equipo remoto, pero se deben cumplir las condiciones siguientes:
Debe tener permiso para programar la tarea. Por lo tanto, debe iniciar sesión en el equipo local con una cuenta que sea miembro del grupo Administradores en el equipo remoto, o debe usar el parámetro /u para proporcionar las credenciales de un administrador del equipo remoto.
Puede usar el parámetro /u solo cuando los equipos locales y remotos están en el mismo dominio o el equipo local está en un dominio en el que confía el dominio del equipo remoto. De lo contrario, el equipo remoto no puede autenticar la cuenta de usuario especificada y no puede comprobar que la cuenta sea miembro del grupo Administradores.
La tarea debe tener permisos suficientes para ejecutarse en el equipo remoto. Los permisos necesarios varían con la tarea. De forma predeterminada, la tarea se ejecuta con el permiso del usuario actual del equipo local o, si se usa el parámetro /u , la tarea se ejecuta con el permiso de la cuenta especificada por el parámetro /u . Sin embargo, puede usar el parámetro /ru para ejecutar la tarea con permisos de una cuenta de usuario diferente o con permisos del sistema.
Examples
Para programar el programa MyApp (como administrador) para que se ejecute en el equipo remoto SRV01 cada diez días a partir de ahora, escriba:
schtasks /create /s SRV01 /tn MyApp /tr c:\program files\corpapps\myapp.exe /sc daily /mo 10En este ejemplo se usa el parámetro /s para proporcionar el nombre del equipo remoto. Dado que el usuario actual local es un administrador del equipo remoto, el parámetro /u , que proporciona permisos alternativos para programar la tarea, no es necesario.
Note
Al programar tareas en un equipo remoto, todos los parámetros hacen referencia a él. Por lo tanto, el archivo especificado por el parámetro /tr hace referencia a la copia de MyApp.exe en el equipo remoto.
Para programar el programa MyApp (como usuario) para que se ejecute en el equipo remoto SRV06 cada tres horas, escriba:
schtasks /create /s SRV06 /tn MyApp /tr c:\program files\corpapps\myapp.exe /sc hourly /mo 3 /u reskits\admin01 /p R43253@4$ /ru SRV06\user03 /rp MyFav!!PswdDado que se requieren permisos de administrador para programar una tarea, el comando usa los parámetros /u y /p para proporcionar las credenciales de la cuenta de administrador del usuario (Admin01 en el dominio Reskits ). De forma predeterminada, estos permisos también se usan para ejecutar la tarea. Sin embargo, dado que la tarea no necesita permisos de administrador para ejecutarse, el comando incluye los parámetros /u y /rp para invalidar el valor predeterminado y ejecutar la tarea con el permiso de la cuenta que no es de administrador del usuario en el equipo remoto.
Programar el programa MyApp (como usuario) para que se ejecute en el equipo remoto SRV02 el último día de cada mes.
schtasks /create /s SRV02 /tn MyApp /tr c:\program files\corpapps\myapp.exe /sc monthly /mo LASTDAY /m * /u reskits\admin01Dado que el usuario actual local (user03) no es un administrador del equipo remoto, el comando usa el parámetro /u para proporcionar las credenciales de la cuenta de administrador del usuario (Admin01 en el dominio Reskits ). Los permisos de la cuenta de administrador se usarán para programar y ejecutar la tarea.
Dado que el comando no incluía el parámetro /p (contraseña), schtasks solicita la contraseña. A continuación, muestra un mensaje de operación correcta y, en este caso, una advertencia:
Type the password for reskits\admin01:******** SUCCESS: The scheduled task MyApp has successfully been created. WARNING: The scheduled task MyApp has been created, but may not run because the account information could not be set.Esta advertencia indica que el dominio remoto no pudo autenticar la cuenta especificada por el parámetro /u . En este caso, el dominio remoto no pudo autenticar la cuenta de usuario porque el equipo local no es miembro de un dominio en el que el dominio del equipo remoto confía. Cuando esto ocurre, el trabajo de tarea aparece en la lista de tareas programadas, pero la tarea está realmente vacía y no se ejecutará.
La siguiente visualización de una consulta detallada expone el problema con la tarea. En la visualización, tenga en cuenta que el valor de Hora próxima ejecución es Nunca y que el valor de Ejecutar como usuario es No se pudo obtener de la base de datos del programador de tareas.
Si este equipo hubiera sido miembro del mismo dominio o de un dominio de confianza, la tarea se habría programado correctamente y se habría ejecutado según lo especificado.
HostName: SRV44 TaskName: MyApp Next Run Time: Never Status: Logon mode: Interactive/Background Last Run Time: Never Last Result: 0 Creator: user03 Schedule: At 3:52 PM on day 31 of every month, start starting 12/14/2001 Task To Run: c:\program files\corpapps\myapp.exe Start In: myapp.exe Comment: N/A Scheduled Task State: Disabled Scheduled Type: Monthly Start Time: 3:52:00 PM Start Date: 12/14/2001 End Date: N/A Days: 31 Months: JAN,FEB,MAR,APR,MAY,JUN,JUL,AUG,SEP,OCT,NO V,DEC Run As User: Could not be retrieved from the task sched uler database Delete Task If Not Rescheduled: Enabled Stop Task If Runs X Hours and X Mins: 72:0 Repeat: Every: Disabled Repeat: Until: Time: Disabled Repeat: Until: Duration: Disabled Repeat: Stop If Still Running: Disabled Idle Time: Disabled Power Management: Disabled
Remarks
Para ejecutar el comando /create con los permisos de un usuario diferente, use el parámetro /u . El parámetro /u solo es válido para programar tareas en equipos remotos.
Para ver más ejemplos de
schtasks /create, escribaschtasks /create /?en un símbolo del sistema.Para programar una tarea que se ejecuta con permisos de un usuario diferente, use el parámetro /ru . El parámetro /ru es válido para tareas en equipos locales y remotos.
Para usar el parámetro /u , el equipo local debe estar en el mismo dominio que el equipo remoto o debe estar en un dominio en el que confíe el dominio del equipo remoto. De lo contrario, la tarea no se crea o el trabajo de la tarea está vacío y la tarea no se ejecuta.
Schtasks siempre solicita una contraseña a menos que proporcione una, incluso cuando programe una tarea en el equipo local mediante la cuenta de usuario actual. Se trata de un comportamiento normal para schtasks.
Schtasks no comprueba las ubicaciones de los archivos de programa ni las contraseñas de las cuentas de usuario. Si no escribe la ubicación de archivo correcta o la contraseña correcta para la cuenta de usuario, la tarea se crea, pero no se ejecutará. Además, si la contraseña de una cuenta cambia o expira y no se cambia la contraseña guardada en la tarea, la tarea no se ejecutará.
La cuenta del sistema no tiene derechos de inicio de sesión interactivos. Los usuarios no ven los programas que se ejecutan con permisos del sistema y no pueden interactuar con ellos.
Cada tarea ejecuta solo un programa. Sin embargo, puede crear un archivo por lotes que inicie varias tareas y, a continuación, programar una tarea para ejecutar dicho archivo.
Puede probar una tarea tan pronto como la cree. Use la operación de ejecución para probar la tarea y, a continuación, compruebe el archivo SchedLgU.txt (SystemRoot\SchedLgU.txt) para ver si hay errores.