Назад | Перейти на главную страницу

PowerShell New-ScheduledTaskTrigger требует ввода данных пользователем?

Я пытаюсь добавить сценарий Powershell в планировщик задач, чтобы он запускался на регулярной основе.

Import-Module ScheduledTasks

$scriptFilePath = "C:\hello-there.ps1"
$action = New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument "-File $scriptFilePath -Noninteractive"

$repetitionDuration = New-TimeSpan -End (Get-Date -Year 2030 -Month 4)
$repetitionInterval = New-TimeSpan -Minute 15

$trigger = New-ScheduledTaskTrigger -RepetitionDuration $repetitionDuration -RepetitionInterval $repetitionInterval
Register-ScheduledTask -TaskName "custom-task" -Description "Does something important" -Trigger $trigger -Action $action

Он выполняется до тех пор, пока New-ScheduledTaskTrigger строка, а затем запрашивает ввод пользователя? «Задайте значения для следующих параметров»
Что я делаю не так?

Посмотрев справку для New-ScheduledTaskTrigger (для ParameterSet, который включает 2 параметра -Repetition *, которые вы указали), вы увидите, что -At не заключен в скобки, поэтому он является обязательным.

New-ScheduledTaskTrigger
   [-RandomDelay <TimeSpan>]
   -At <DateTime>
   [-Once]
   [-RepetitionDuration <TimeSpan>]
   [-RepetitionInterval <TimeSpan>]
   [-CimSession <CimSession[]>]
   [-ThrottleLimit <Int32>]
   [-AsJob]
   [<CommonParameters>]

Получается нужно указать -Once -At (Get-Date) чтобы заставить его работать (я нашел подсказку в ответ здесь)