我正在编写 PS 脚本,该脚本将在计算机登录后运行任务。这是我安排任务的方式:
$trigger = New-JobTrigger -AtLogOn
Register-ScheduledJob -Name TestSchedule -FilePath <filepath> -Trigger $trigger
计划运行的脚本除了启动命令提示符外什么都不做,但是一旦我登录到计算机,什么都没有运行。我已经尽力修补它,但我一无所获。
我正在编写 PS 脚本,该脚本将在计算机登录后运行任务。这是我安排任务的方式:
$trigger = New-JobTrigger -AtLogOn
Register-ScheduledJob -Name TestSchedule -FilePath <filepath> -Trigger $trigger
计划运行的脚本除了启动命令提示符外什么都不做,但是一旦我登录到计算机,什么都没有运行。我已经尽力修补它,但我一无所获。
也许不是最好的最佳解决方案,但您可以尝试将其他脚本放入此“作业脚本”。像这样。对我来说很好。
$jobname = "xyz"
$JobTrigger = New-JobTrigger -Weekly -At "03:00 AM" -DaysOfWeek Saturday
$MyOptions = New-ScheduledJobOption -ContinueIfGoingOnBattery -HideInTaskScheduler
Register-ScheduledJob -name "$jobname" -scriptblock {$myscript} -trigger $JobTrigger –ScheduledJobOption $MyOptions
我认为您的代码缺少此命令:
Set-ScheduledTask -TaskName $name -TaskPath Microsoft\Windows\PowerShell\ScheduledJobs -Principal (New-ScheduledTaskPrincipal -L Interactive -U $env:USERNAME)
$name
是您计划的作业的名称,此命令使作业与用户交互,如果您的代码仍然不起作用,请查看此脚本:
https ://gallery.technet.microsoft.com/scriptcenter/PC-Utilities-Downloader -355e5bfe