【问题标题】:PowerShell Script not running with the task schedulerPowerShell 脚本未与任务计划程序一起运行
【发布时间】:2017-08-01 02:21:35
【问题描述】:

所以我创建了一个安装 Windows 更新的 PowerShell 脚本,

您可能知道,在安装更新时,PC 可能必须重新启动(此时仍有更新)才能安装脚本。

我实现的是在脚本开始时导入的任务,并在每次重新启动后运行脚本(并在登录屏幕上安装剩余的脚本),直到没有更多的脚本。

在最后一次更新后,脚本会将任务从任务调度程序中移除。

我的实现(下载/安装/添加任务/删除任务)运行良好。

只是我的脚本在重新启动后无法运行,我不知道为什么!

这是我的任务:

在电脑重启后,脚本不再运行,任务调度程序中的错误状态为 0x1

我做了一些谷歌搜索,发现参数可能是错误的(第三张图片的路径当然是正确的)但我已经尝试过(在参数字段中):

  • (无引号)-文件路径
  • -ExecutionPolicy 绕过-文件路径
  • -NoProfile -ExecutionPolicy 绕过-文件路径-force
  • 将上述组合与添加或省略的引号混合

任务计划程序没有启动我的脚本可能是什么问题?

谢谢

编辑

添加了作为批处理作业属性登录的屏幕截图:

【问题讨论】:

  • 从底部的要点中我经常使用#2:-ExecutionPolicy Bypass -File C:\Path\To\File.ps1。这对于运行计划任务应该可以正常工作。唯一的问题是可能必须允许该帐户“作为批处理作业登录”,您可以找到here. 的说明
  • 由于同样的 0x1 错误,它无法正常工作,我已将登录屏幕截图添加为作业属性,并且不认为它有任何问题

标签: powershell scheduled-tasks windows-server-2012-r2


【解决方案1】:

问题与我的 START IN 有关 - 是空的!

我的脚本在C:\Scripts\Scripts.ps1,所以我必须填写C:\Scripts\

这是您需要做的,否则 PS 将在它所在的文件夹(Windows 文件夹)中启动。

由于脚本使用了其他文件,所以我必须指定 START IN 路径,之后就解决了。

【讨论】:

    【解决方案2】:

    在您的计划任务中调用 Powershell.exe:

    C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
    

    设置此参数:

    -noprofile -executionpolicy unrestricted -noninteractive -file "C:\Path\To\MyScript.ps1"
    

    【讨论】:

    • 这失败了,因为脚本两侧的“”我使用以下作为参数:-NoProfile -NoLogo -NonInteractive -ExecutionPolicy Bypass -File C:_MaintenanceScripts\ProcessPrices.ps1
    【解决方案3】:

    试试这个参数,用你的实际路径替换它(如果你的路径有空格):

    -ExecutionPolicy Bypass -file "C:\Path to\script.ps1"

    从错误来看,它似乎无法运行脚本。除此之外,@TheMadTechnician 的评论是准确的。从您的图片来看,您似乎将任务安排为本地管理员帐户,因此该帐户不需要确保启用批量登录(如果它是真正的本地管理员并且该帐户仍在管理员中服务器上的本地组)

    还要注意——如果计划任务在运行时尝试自行删除,您可能会遇到问题。我没有亲自测试过,但是您可以构建一个休眠几分钟的计划任务,并在它运行时尝试取消注册它,看看是否失败。

    【讨论】:

    • 感谢您的回答。我曾尝试使用您的论点,但它失败了,并给出了与我的问题(0x1) 相同的错误,但我认为启用“批量登录”没有问题。我在设置问题中添加了一个屏幕截图(假设我是唯一的用户/管理员)
    • 这失败了,因为脚本两侧的“”我使用以下作为参数:-NoProfile -NoLogo -NonInteractive -ExecutionPolicy Bypass -File C:_MaintenanceScripts\ProcessPrices.ps1
    猜你喜欢
    • 2015-07-27
    • 2020-08-07
    • 2015-07-22
    • 2017-11-08
    • 1970-01-01
    • 1970-01-01
    • 2022-12-01
    • 1970-01-01
    • 2019-05-02
    相关资源
    最近更新 更多