Документация

Планировщик Windows

Задания Windows и PowerShell.

Планировщик Windows показывает результат последнего запуска кодом вида 0x41303, и заметить, что задание не выполняется неделю, можно только зайдя в консоль. Отчёт наружу избавляет от этой необходимости.

job.ps1
$Ping = 'https://ping.tickwatch.dev/ВАШ-КЛЮЧ'

function Send-Ping {
    param([string]$Suffix = '', [string]$Body = '')
    $url = if ($Suffix) { "$Ping/$Suffix" } else { $Ping }
    try {
        Invoke-RestMethod -Uri $url -Method Post -Body $Body -TimeoutSec 10 | Out-Null
    } catch {
        # Молчим: недоступность мониторинга не должна ломать задачу.
    }
}

Send-Ping -Suffix 'start'

try {
    $out = & 'C:\Scripts\job.cmd' 2>&1 | Out-String
    Send-Ping -Body $out
} catch {
    Send-Ping -Suffix 'fail' -Body ($_ | Out-String)
    exit 1
}

Регистрация задания одной командой:

powershell
$action  = New-ScheduledTaskAction -Execute 'powershell.exe' `
    -Argument '-NoProfile -ExecutionPolicy Bypass -File C:\Scripts\job.ps1'
$trigger = New-ScheduledTaskTrigger -Daily -At 3am
Register-ScheduledTask -TaskName 'Nightly job' -Action $action -Trigger $trigger `
    -User 'SYSTEM' -RunLevel Highest
Планировщик Windows · Tickwatch