Я хочу запустить следующий код powershell в виде запланированной задачи, также развернутой с помощью powershell.
$postParams = @{hostname=hostname;key="keyhere"}; Invoke-WebRequest -Uri https://url.com/url -Method POST -Body $postParams
Я использую следующий код для создания запланированной задачи Windows, которая должна выполнять код .
$repeat = (New-TimeSpan -Minutes 5)
$action = New-ScheduledTaskAction -Execute 'Powershell.exe' `-Argument '-NoProfile -WindowStyle Hidden -command "& {$postParams = @{hostname=hostname;key="keyhere"}; Invoke-WebRequest -Uri https://url.com/url -Method POST -Body $postParams}"'
$trigger = New-ScheduledTaskTrigger -Once -At (Get-Date).Date -RepetitionInterval $repeat
Register-ScheduledTask -Action $action -Trigger $trigger -TaskName "Update IP" -Description "IP update"
Хотя это успешно создает саму задачу, ее выполнение приводит к следующей ошибке в истории задач и не выполняет код
Task Scheduler failed to launch action "Powershell.exe" in instance "{9b40f292-92cc-47dc-9041-d3b2d266d82b}" of task "\Update IP". Additional Data: Error Value: 2147942667.
Обычно при поиске этой ошибки онлайн это проблема с кавычками при указании путей, и я не могу найти больше ничего по этому вопросу.
Я бы хотел избегать запуска этого из своего собственного файла .ps1, если это возможно, и заставить его работать описанным выше способом (из-за способа его развертывания).
Может кто-нибудь помочь, пожалуйста?