【问题标题】:Windows Task Scheduler -- Fails to run Powershell ScriptsWindows 任务计划程序 - 无法运行 Powershell 脚本
【发布时间】:2015-10-29 13:36:40
【问题描述】:

我编写了两个需要每天早上运行的 powershell 脚本。第一个生成一个文本文件,其中包含在过去 24 小时内添加到目录中的所有新文件的名称和位置。我编写的第二个脚本获取该 .txt 文件并将其通过电子邮件发送给自己。

这两个脚本在手动执行时都能完美运行。我将它们都添加到任务调度程序中,但调度程序没有正确执行脚本。不会生成文本文件,也不会发送电子邮件。

我做过的事情(对于两个脚本):

  1. 选择了无论用户是否登录都运行的选项。
  2. 设置为以最高权限运行
  3. 检查并再次检查我的ExecutionPolicyUnrestricted

编辑:由于图片太小,这里直接链接:http://imgur.com/EX7Vxj7

【问题讨论】:

  • 在“操作”选项卡下,您能否显示该操作以及该操作的“编辑...”详细信息?
  • 您是否在 powershell.exe 的参数中包含 -noexit 标志?
  • 当然!这是操作选项卡:imgur.com/yfTMGLx,这是编辑选项卡:imgur.com/6RwY96w
  • @MathiasR.Jessen 我不确定你指的是什么——你介意扩展 -noexit 标志吗?
  • 在“添加参数(可选)”框中。当您执行powershell.exe script.ps1 时,它会运行脚本。当您执行powershell -noexit script.ps1 时,它会运行脚本,但之后不会退出进程。不过好像不是这样的

标签: powershell scheduled-tasks


【解决方案1】:

Action需要设置为“启动程序”,程序应为PowerShell.exe

其次,您需要在“添加参数”框中输入-File '[script path]'。如果您想在之后保持窗口打开,您可以添加-NoExit,但它当然需要以您自己的用户身份运行。

【讨论】:

    【解决方案2】:

    如果您的脚本位于共享地图上,您需要像这样向文件提供 unc:

    \\servername\script.ps1
    

    您可以在这篇文章中找到更多详细信息: https://dmitrysotnikov.wordpress.com/2011/02/03/how-to-schedule-a-powershell-script/

    【讨论】:

      猜你喜欢
      • 2013-08-22
      • 2019-05-08
      • 2020-08-07
      • 2015-07-22
      • 2015-07-27
      • 1970-01-01
      • 2020-07-13
      • 2019-05-02
      • 1970-01-01
      相关资源
      最近更新 更多