У меня проблема с написанием сценария для автоматизации создания запланированных задач в Windows.
После долгих поисков в Google я не могу определить, какие параметры утилиты командной строки SCHTASKS.EXE управляют настройкой «Остановить задачу, если она выполняется в течение нескольких часов».
Я не могу вам сказать, что это можно автоматизировать с помощью schtasks. Однако это можно сделать в PowerShell.
Создав задачу с помощью schtasks (что можно сделать в PowerShell), вы можете использовать такой код для обновления лимита времени выполнения:
$task = Get-ScheduledTask "MyTaskName"
$task.Settings #Optional to see what is going on
$task.Settings.ExecutionTimeLimit = "PT0S"
$task.Settings #Optional to see how it changed
Set-ScheduledTask $task
Ключ в знании настройки PT0S. P3D - по умолчанию 3 дня. PT0S снимает отметку с этого параметра и разрешает выполнение задачи вечно. Если вы хотите получить окончательный ответ на определенную продолжительность, установите параметры в задаче так, как вы хотите, с помощью пользовательского интерфейса, а затем экспортируйте задачу. Если вы посмотрите на получившийся XML-файл, вы увидите настройку ExecutionTimeLimit.
Лучше всего, вероятно, будет переключатель / DU.
/ DU продолжительность
Значение, указывающее продолжительность выполнения задачи. Формат времени - ЧЧ: мм (24-часовое время). Например, 14:50 означает 14:50. Это не применимо с / ET и для следующих типов расписания: ONSTART, ONLOGON, ONIDLE и ONEVENT. Для задач / V1 (задачи планировщика заданий 1.0), если указан / RI, продолжительность по умолчанию составляет один час.
Windows XP: этот параметр недоступен.
Цитируется из MSDN. Почему этой информации нет в Страница библиотеки TechNet для schtasks вне меня.