É bom saber que, uma vez que um desligamento agendado está em andamento, você não pode alterá-lo, a menos que você primeiro aborte.
Isso significa duas coisas.
Se você sabe, antes das 22h, que precisa de mais tempo, pode simplesmente emitir um shutdown /s /t <long value>
e, quando a tarefa agendada for executada, ele simplesmente falhará ao informar: Um desligamento já está em andamento. Por favor, use shutdown / a para abortar.
Você pode criar um arquivo batch que faz shutdown / s / t 2700 para dar a você 45 minutos a partir do momento de clicar nele ou executá-lo manualmente. O valor do tempo pode ser o que você quiser.
Se a hora chegar às 22:00 e o desligamento for iniciado, primeiro será necessário parar o desligamento usando shutdown /a
antes de iniciar um novo com um valor mais longo, como shutdown /s /t 1800
, o que significa 30 minutos de naquele momento.
Observe, dependendo da versão do Windows que você está usando, esse valor de tempo de desligamento pode ser enorme. Apenas no Windows Server 2008 e em versões anteriores do Windows, o tempo máximo é de 600 segundos, ou seja, 10 minutos. Mas nas versões posteriores, você pode ir alto. Como 8 horas ou mais, se você quiser. Então, em teoria, se você calcular o tempo exato que você quer terminar, mesmo que seja como 5 horas antes de sua tarefa começar, você já pode fazer com que seja ignorado uma vez.