Que parâmetro (s) SCHTASKS controla a configuração “Interromper a tarefa se ela for executada por x horas”?

4

Eu tenho um problema ao escrever um script para automatizar a criação de tarefas agendadas no Windows.

Depois de pesquisar muito, não consigo deduzir quais parâmetros do utilitário de linha de comando SCHTASKS.EXE controlam a configuração "Interromper a tarefa se ela for executada por horas".

    
por mseery 30.12.2010 / 23:55

2 respostas

1

O seu melhor provavelmente seria a opção / DU.

/DU duration

A value that specifies the duration to run the task. The time format is HH:mm (24-hour time). For example, 14:50 specifies 2:50PM. This is not applicable with /ET and for the following schedule types: ONSTART, ONLOGON, ONIDLE, and ONEVENT. For /V1 tasks (Task Scheduler 1.0 tasks), if /RI is specified, then the duration default is one hour.

Windows XP: This option is not available.

Citado no MSDN. Por que essa informação não é na página da TechNet Library para schtasks está além de mim.

    
por 31.12.2010 / 00:06
1

Eu não posso dizer que é possível automatizar isso com schtasks. No entanto, isso pode ser feito no powershell.

Depois de criar sua tarefa com schtasks (o que você pode fazer no powershell), você pode usar um código como este para atualizar o limite de tempo de execução:

$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

A chave é conhecer a configuração do PT0S. P3D é o padrão de 3 dias. O PT0S desmarca a opção e permite que a tarefa seja executada para sempre. Se você quiser uma resposta definitiva em uma duração específica, defina as opções da maneira que deseja em uma tarefa usando a interface do usuário e exporte a tarefa. Se você observar o arquivo XML resultante, poderá ver a configuração de ExecutionTimeLimit.

    
por 03.05.2018 / 23:59