我的PowerShell脚本从IP摄像头拍摄快照,它在带有Windows 10 IoT核心的Raspberry Pi3上运行。
当我从PowerShell运行脚本时(仅键入ThreadLocal
),它运行得很好。但是当我从cmd c:\scripts\snapshot.ps1
运行它时(我需要这个从任务调度程序运行),它运行太多时间并占用整个CPU核心,运行几分钟后我将其杀死。
当我从powershell运行此命令时(同样来自cmd)。脚本将停在powershell -File c:\scripts\snapshot.ps1
上。文件Invoke-WebRequest -Uri $url -Headers $Headers -OutFile "$dir\$outFile"
已创建,但没有内容且仍在运行和运行。我观察整个脚本太慢了,当只用2 $outFile
运行脚本时,它是2个写入字符串之间的延迟。
我尝试了Write-Output
和-MTA
以及一些下一个-NoProfile
参数,但没有运气。
我的剧本:
powershell.exe
编辑: 我计划运行的任务:
$user = 'operator'
$pass = 'password'
$url = 'http:\\url.jpg'
$dir = "c:\outputdir"
$date = Get-Date
$date = $date.ToString("yyyy-MM-dd_HH-mm-ss")
$outFile = "snapshot_$date.jpg"
$pair = "$($user):$($pass)"
$encodedCreds = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($pair))
$basicAuthValue = "Basic $encodedCreds"
$Headers = @{
Authorization = $basicAuthValue
}
Invoke-WebRequest -Uri $url -Headers $Headers -OutFile "$dir\$outFile"
我尝试以NT AUTHORITY \ SYSTEM运行任务 - 但没有运气。
感谢您的时间。
罗布
答案 0 :(得分:2)
默认情况下,任何任务都以"低于正常"优先。
如果您将任务导出任务计划程序并打开XML,您将看到:
<Priority>7</Priority>
将其更改为:
<Priority>4</Priority>
保存XML,删除任务并运行&#34;导入任务&#34;。指向您编辑的XML,您应该会发现任务现在以正常优先级运行。
您可以通过在任务管理器中查找PowerShell实例来检查优先级,右键单击并选择&#34;设置优先级&#34;。