Execute uma tarefa agendada apenas uma vez com base em um evento

Execute uma tarefa agendada apenas uma vez com base em um evento

Tenho uma tarefa que desejo executar apenas uma vez sempre que a memória do sistema atingir menos de 10%. Gatilho de tarefa agendada

Isso funcionaria até que a memória fosse inferior a 10% ou funcionaria apenas uma vez? Se for executado até menos de 10%, como faço para que seja executado apenas uma vez?

A tarefa que estou executando é um script do PowerShell

Responder1

Supondo que a tarefa que você está executando seja um script, você pode adicionar uma linha definindo a própria tarefa como desativada quando o script for concluído:

move "C:\WINDOWS\Tasks\TEST TASK.job" "C:\WINDOWS\Tasks\TEST TASK.bak"

Daqui:https://serverfault.com/questions/164097/is-it-possible-to-disable-a-scheduled-task-from-the-command-line-in-windows-xp

Ou você pode escrever um arquivo de verificação no final da tarefa e verificar sua existência no início da tarefa:

if exist complete.file goto :eof

O PowerShell torna isso ainda mais fácil:

Disable-ScheduledTask -TaskName "TaskName"

Daqui:https://serverfault.com/questions/912486/enable-and-disable-scheduled-task-with-powershell-and-variable

informação relacionada