Führen Sie eine Aufgabe alle x Minuten mit dem Windows Task Scheduler aus [geschlossen]

297

Ich versuche, Windows Task Scheduler dazu zu bringen, eine bestimmte EXE-Datei etwa alle 10 Minuten auszuführen, aber die Optionen ermöglichen nur eine einmal tägliche Ausführung.

Gibt es eine Möglichkeit, alle 10 oder 20 Minuten eine EXE-Datei auszuführen?

Kakalapy
quelle
6
So unintuitiv wie in Windows Server 2008, können Sie im Dropdown-Feld "Aufgabe alle wiederholen" im Dialogfeld "Auslöser bearbeiten" eine Nummer eingeben. Ich habe auch einen Link in MorningZs Eintrag unten hinterlassen.
David Yates
4
Google gibt mehrere Antworten , darunter diese von Microsoft .
Phrogz

Antworten:

395

Die Aufgabe muss in zwei Schritten konfiguriert werden.

Zuerst erstellen Sie eine einfache Aufgabe, die jeden Tag um 0:00 Uhr beginnt. Dann gehen Sie hinein Advanced...(oder ähnlich, je nachdem, auf welchem ​​Betriebssystem Sie sich befinden) und wählen die Repeat every X minutesOption für 24 Stunden aus.

Der Schlüssel hier ist, die erweiterten Eigenschaften zu finden. Wenn Sie den XP-Assistenten verwenden, können Sie den erweiterten Dialog erst dann starten, wenn Sie die Aufgabe erstellt haben.

Bei neueren Windows-Versionen (7+, glaube ich?):

  1. Doppelklicken Sie auf die Aufgabe, und ein Eigenschaftsfenster wird angezeigt.
  2. Klicken Sie auf die TriggersRegisterkarte.
  3. Doppelklicken Sie auf die Triggerdetails. Das Fenster Trigger bearbeiten wird angezeigt.
  4. Aktivieren Sie unter Advanced settingsBedienfeld die Option Repeat task everyxxx Minuten und stellen IndefinitelySie sie bei Bedarf ein.
  5. Klicken Sie abschließend auf OK.
Münze
quelle
39
Das Problem bei dieser Lösung ist, dass beim Neustart um 0:05 Uhr die Aufgabe erst um 23:55 Uhr wiederholt wird!
Joshua David
7
Eine leichte Abweichung wäre, 24 Aufgaben festzulegen, die jeweils 1 Stunde lang wiederholt werden. Dann verlieren Sie nie mehr als eine Stunde Berichterstattung
Yablargo
101
@FireCoding nicht, wenn Sie die Aufgabe so eingestellt haben, dass sie ausgeführt wird, sobald ein geplanter Start verpasst wird. Unter Aufgabe> Eigenschaften> Einstellungen> ÜberprüfenRun task as soon as possible after a scheduled start is missed
Urda
4
@Urda: Angenommen, Sie stellen die Aufgabe so ein, dass sie um 0:00 Uhr beginnt und jede Stunde wiederholt wird. Wenn Sie den Computer um 06:00 Uhr einschalten und die Option aktiviert Run task as soon as possible after...ist, werden dann eine oder sechs Instanzen des Befehls ausgeführt?
Andreas Rejbrand
7
@AndreasRejbrand If this setting is checked, the Task Scheduler service will start the task if the task was scheduled to run at a certain time, but for some reason (for example, the computer was turned off or the Task Scheduler service was busy) the task was not activated. The Task Scheduler service will not start the task immediately after the task was missed. By default the service waits ten minutes before starting the missed task.Es sollte also nur eine Instanz der Aufgabe starten, nicht das gesamte Backlog.
Urda
44

Nachdem Sie die Option für die minimale Wiederholung ausgewählt haben (5 Minuten oder 10 Minuten), können Sie die Nummer markieren und die gewünschte Nummer schreiben

Durim Sinani
quelle
Dies funktioniert auf Server 2012, da es keine erweiterte Option gibt. Der Schlüssel auf diesen Plattformen ist zu erkennen, dass Sie in der Box angeben können, was Sie möchten.
entscheidet
8
weit draußen ... 0 von 10 für Auffindbarkeit im UI-Design Microsoft!
Damien Sawyer
gut zu wissen, sehr gut zu wissen :) Aber es gibt keine weitere Möglichkeit, auf Sekunden zu gehen, oder? 1 Minute ist das Mindeste? Ich würde gerne zu 30 oder sogar 10 Sekunden gehen ...
BAERUS
1
Dies ist ein Kommentar, keine Antwort.
Leo Natan
3
@LeoNatan Eigentlich war dies die genaue Antwort, nach der ich gesucht habe, als ich in diesen Beitrag schlenderte :-)
Jony Adamit
33

Sie können auch eine Batchdatei wie die folgende erstellen, wenn Sie zwischen den Aufrufen eine feinere Granularität benötigen:

:loop
CallYour.Exe
timeout /t timeToWaitBetweenCallsInSeconds /nobreak
goto :loop
Kevin Lee
quelle
3
In meinem Fall war dies die eleganteste Lösung, da die betreffende Aufgabe bereits aus einer Batchdatei gestartet wurde. Es ging also nur darum, ein paar Zeilen hinzuzufügen. Vielen Dank!
Marlar
1
Ich mag diese Lösung. Aber wie stellen Sie sicher, dass diese Batchdatei immer ausgeführt wird (und nur eine Instanz davon)?
Olivier 'Ölbaum' Scherler
Dies ist ein Weg, ja, aber der Taskplaner ist der richtige Weg. Verwenden Sie einfach die Option "Nach dem Start" anstelle eines bestimmten Datums, und schon sind Sie abgesichert.
Jakob Sternberg
Ich habe alle möglichen Probleme beim Konfigurieren einer Aufgabe, die stündlich ausgeführt werden soll. Ich mag diese Lösung, um sie zu schleifen und 1 Stunde lang schlafen zu lassen und den Job zu schleifen. Sie müssen nur herausfinden, wie das Timing bei der täglichen Arbeit funktioniert und ob die stündlichen Aufgaben alle 24 Stunden ein Problem verursachen.
So
23

Geben Sie in "Alle Aufgaben wiederholen:" einfach 2 Minuten ein, anstatt aus der Dropdown-Liste auszuwählen.

Henrik
quelle
2
Vielen Dank. Genau das habe ich gesucht. Die unter Win 2008 R2 zulässige Mindestzeit beträgt 1 Minute.
Timothy C. Quinn
19

Unter XP habe ich auf die AdvancedSchaltfläche auf der ScheduleRegisterkarte geklickt . Es gibt ein Kontrollkästchen für Repeat task. Der Standardwert ist alle 10 Minuten.

Darüber hinaus können Sie geplante Aufgaben über die Befehlszeile erstellen . Ich habe es selbst nicht versucht, aber es sieht so aus, als würden Sie etwas in der Art von (nicht getestet) wollen:

schtasks /create /tn "Some task name" /tr "app.exe" /sc HOURLY 
Courtney Christensen
quelle
Ich bin verwirrt über die bis Optionen. Ich setze es so, dass es alle 5 Minuten wiederholt wird, sagen wir, dann bin ich gezwungen, ein Optionsfeld darunter zu wählen ... Was gebe ich ein, wenn ich möchte, dass es jeden Tag alle 5 Minuten läuft und nicht aufhört.
Kakalapy
OK, Sie haben Recht. Das ist verwirrend. Anscheinend können Sie eine über die Befehlszeile erstellen. Vielleicht ist das einen Versuch wert. Ich habe den Beitrag mit dem Link aktualisiert, den ich gefunden habe.
Courtney Christensen
19

Beispiel für eine stündliche Aufgabe

Während Sie die obigen Ratschläge mit schtasks befolgen, können Sie in der Benutzeroberfläche sehen, was getan werden muss, um eine stündliche Aufgabe auszuführen. Wenn Sie den Auslöser bearbeiten, beginnen Sie die Aufgabe nach einem Zeitplan, einmalig (dies ist der Schlüssel). Dann können Sie "Aufgabe alle wiederholen:" 1 Stunde oder was auch immer Sie wünschen auswählen. Siehe Screenshot:

Mike Cush
quelle
1
Und mit SCHTASKS /Create?
Kiquenet
8

Um die automatische Aktualisierung zu planen, sollten Sie:

  • Gehen Sie zu Systemsteuerung »Verwaltung» Geplante Aufgaben
  • Erstellen Sie die (grundlegende) Aufgabe
  • Gehen Sie zu Zeitplan »Erweitert
  • Aktivieren Sie das Kontrollkästchen "Aufgabe wiederholen" alle 10 Minuten mit einer Dauer von z. B. 24 Stunden oder auf unbestimmte Zeit
  • Lassen Sie das Enddatum deaktiviert

Wenn Sie die Zeitplaneinstellungen nicht finden können, suchen Sie unter: Eigenschaften, Bearbeiten, Trigger.

David
quelle
3

Einige der bereitgestellten Links sind nur Einstellungen für die Windows 2003-Version von "Geplante Aufgaben".

In Windows Server 2008 enthält das Setup "Aufgaben" nur ein Feld mit Optionen für "5 Minuten, 10 Minuten, 15 Minuten, 30 Minuten und 1 Stunde" (Screenshot: http://i46.tinypic.com/2gwx7r8.jpg) ) ... wo das Fenster 2003 ein Textfeld "Geben Sie die gewünschte Nummer ein" war.

Ich dachte, ich mache einen "Export" und bearbeite das XML von: PT30M nach PT2M

und das als neue Aufgabe zu importieren würde Aufgaben dazu bringen, alle 2 Minuten zu wiederholen, aber das gefiel ihm nicht

Meine Problemumgehung, um eine Aufgabe in Windows 2008 alle 2 Minuten ausführen zu lassen, bestand darin, 30 verschiedene "Trigger" für meine Aufgabe einzurichten, die sich jede Stunde wiederholen, aber auf: 00 ,: 02 ,: 04 ,: 06 usw. starren am .... brauchte ich 8-10 Minuten zum Einrichten, aber ich musste es nur einmal tun :-)

MorningZ
quelle
12
So unintuitiv es auch ist, Sie können tatsächlich eine Nummer in die Windows Server 2008-Dropdown- Liste
David Yates