2010-11-22 128 views
213

Estoy intentando hacer que el Programador de tareas de Windows ejecute un .exe particular cada 10 minutos más o menos, pero las opciones solo permiten la ejecución de una vez al día.Ejecutar una tarea cada x-minutos con el Programador de tareas de Windows

¿Hay alguna forma de que ejecute un .exe cada 10 o 20 minutos?

+4

Como no es intuitivo en Windows Server 2008, puede escribir un número en el cuadro desplegable "Repetir tarea cada" en el cuadro de diálogo "Editar desencadenador". También dejé un [enlace] (http://social.technet.microsoft.com/Forums/en-US/winserverManagement/thread/74a10148-36c9-432b-be1c-9833d4cbfd86) en la entrada de MorningZ a continuación. –

+3

Google da [varios] (http://www.windowsitpro.com/article/tips/jsi-tip-3121-how-can-i-get-windows-2000-scheduled-tasks-to-repeat-a-task -every-n-minutes-.aspx) [answers] (http://www.lonewolfdesigns.co.uk/windows-task-scheduler/), incluido [este de Microsoft] (http://support.microsoft. com/kb/226795). – Phrogz

Respuesta

282

La tarea debe estar configurado en dos pasos.

Primero crea una tarea simple que comienza a las 0:00 todos los días. Luego, vaya al Advanced... (o similar dependiendo del sistema operativo en el que se encuentre) y seleccione la opción Repeat every X minutes durante 24 horas.

La clave aquí es encontrar las propiedades avanzadas. Si está utilizando el asistente de XP, solo le ofrecerá iniciar el cuadro de diálogo avanzado una vez que haya creado la tarea.

En las versiones más recientes de las ventanas (7+ creo?):

  1. doble clic en la tarea y una ventana de propiedades se mostrará.
  2. Haga clic en la pestaña Triggers.
  3. Haga doble clic en los detalles del disparador y aparecerá la ventana Editar desencadenador.
  4. En Advance settings panel, marque Repeat task every xxx minutos y configure Indefinitely si lo necesita.
  5. Por último, haga clic en Aceptar.
+27

El problema con esta solución es que si reinicias a las 0:05, la tarea no comenzará a repetirse hasta las 23:55 ¡más tarde! – JoshuaDavid

+6

Una ligera variación sería establecer 24 tareas, cada repetición durante 1 hora. Entonces nunca perderá más de una hora de cobertura – Yablargo

+72

@FireCoding, no si ha configurado la tarea para ejecutarse tan pronto como se pierda un inicio programado. En Tarea> Propiedades> Configuraciones> Comprobar 'Ejecutar tarea tan pronto como sea posible después de que se haya perdido un inicio programado' – Urda

15

En XP, hice clic en el botón Advanced en la pestaña Schedule. Hay una casilla de verificación para Repeat task. El valor predeterminado es cada 10 minutos.

Además, puede crear la tarea programada via the command line. No he probado esto por mí mismo, pero parece que te gustaría algo en la línea de (no probado):

schtasks /create /tn "Some task name" /tr "app.exe" /sc HOURLY 
+0

estoy confundido acerca de las opciones hasta. Lo configuro para que repita cada 5 minutos, digamos, luego forzado a elegir un botón de radio debajo de ese ... ¿en qué ingreso si quiero que ti se ejecute cada 5 minutos todos los días y no se detenga? – kacalapy

+0

Ok, tienes razón. Eso es confuso Aparentemente puedes crear uno a través de la línea de comando. Tal vez eso vale la pena intentarlo. Actualicé la publicación con el enlace que encontré. –

3

Algunos de los enlaces que se proporcionan son sólo ajustes para la versión de "tareas programadas"

En Windows Server 2008 las "tareas" de configuración única de Windows 2003 tiene una caja con opciones de "5 minutos , 10 minutos, 15 minutos, 30 minutos y 1 hora "(captura de pantalla: http://i46.tinypic.com/2gwx7r8.jpg) ... donde Windows 2003 era un cuadro de texto" ingrese el número que desee ".

pensé hacer una "exportación" y editar el código XML a partir de: PT30M a PT2M

e importación que a medida que una nueva tarea sería Tareas "truco" en repetir cada 2 minutos, pero no lo hizo como ese

Mi forma de evitar que una tarea se ejecute cada 2 minutos en Windows 2008 fue (ugggh) configurar 30 "triggers" diferentes para mi tarea repitiendo cada hora pero mirando a: 00,: 02,: 04,: 06 y así sucesivamente y así sucesivamente ....me llevó 8-10 minutos para configuración, pero yo sólo tenía que hacerlo una vez :-)

+11

Por poco intuitivo que sea, puede escribir un número en el menú desplegable de Windows Server 2008: http://social.technet.microsoft.com/Forums/en-US/winserverManagement/thread/74a10148-36c9-432b-be1c- 9833d4cbfd86 –

23

Después de seleccionar la opción mínima de repetición (5 minutos o 10 minutos) se puede resaltar el número y escribir el número que desea

+0

Esto es lo que funciona en Server 2012 ya que no hay una opción 'Avanzada'. La clave en estas plataformas es darse cuenta de que puede especificar lo que quiera en la caja. – decates

+4

lejos ... 0 de 10 para descubrir en el diseño de la interfaz de usuario Microsoft! –

+0

bueno saberlo, muy bien saberlo :) Pero no hay otra posibilidad de bajar a segundos, ¿verdad? 1 minuto es lo menos? Me gustaría ir a 30 o incluso 10 segundos ... – BAER

4

para programar la actualización automática para ser usted debe:

  • Ir a Panel de control »tareas programadas
  • Crear la tarea
  • Ir a la Lista» Advanced
  • Marque la casilla "Repetir tarea" cada 10 minutos con una duración de 24 horas
  • Dejar Fecha de finalización sin control
14

En los "Repetir tarea cada:" solo tipo 2 minutos en lugar de elegir de la lista desplegable.

+2

Gracias. Esto es exactamente lo que estaba buscando. El tiempo mínimo permitido en Win 2008 R2 es de 1 minuto. –

19

También puede crear un archivo por lotes como la siguiente si necesita una granularidad más fina entre llamadas:

:loop 
CallYour.Exe 
timeout /t timeToWaitBetweenCallsInSeconds /nobreak 
goto :loop 
+2

En mi caso, esa era la solución más elegante ya que la tarea en cuestión ya se había iniciado desde un archivo por lotes. Entonces solo se trataba de agregar un par de líneas. ¡Gracias! – marlar

+1

Me gusta esta solución. Pero, ¿cómo se asegura de que este archivo por lotes esté siempre en ejecución (y solo una instancia del mismo)? –

+0

Esta es una forma de hacerlo, sí, pero el programador de tareas es el camino a seguir. Simplemente use la opción "Después del inicio" en lugar de una fecha específica, y estará cubierto. –

2

Hourly task example

Al tiempo que toma el consejo anterior con schtasks, se puede ver en la interfaz de usuario lo que debe hacerse para realizar una tarea por hora. Cuando edite el disparador, comience la tarea según un programa, una vez (esta es la clave). Luego puede seleccionar "Repetir tarea cada:" 1 hora o lo que desee. Ver captura de pantalla:

Cuestiones relacionadas