在 Windows 8 中安排 Powershell 脚本?

在 Windows 8 中安排 Powershell 脚本?

如何在 Windows 8 中安排 Powershell 脚本每天凌晨 3 点运行?

答案1

编辑:这是一个对我有用的概念证明。

  1. 打开一个新的文本文件并输入
    write-Host 'Hello World'
    $x = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")

  2. 将其另存hello.ps1为桌面

  3. 使用提升的权限打开 32 位版本的 powershell.exe
    (右键单击 + 以管理员身份打开)
    C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe

  4. 确保你没有使用 x64 版本,除非你想
    C:\Windows\syswow64\Windowspowershell\v1.0\powershell.exe

  5. 在我的 Windows 7 上,“Windows PowerShell (x86)”开始菜单快捷方式指向 x64版本!这些版本使用单独的政策设置。我花了一段时间才搞明白 :)

  6. 输入以下内容以允许 powershell 脚本并使用以下方式确认Y
    Set-ExecutionPolicy Unrestricted

  7. 该设置将永久保存。请重新启动以检查。

  8. 检查 powershell 策略并确认它仍然不受限制
    get-ExecutionPolicy

  9. 打开计划任务窗口

  10. 制定一个指向 x86 版本的计划任务
    C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe

  11. 输入以下内容作为可选参数:
    c:\users\YOURUSERNAME\desktop\hello.ps1

  12. 通过在计划任务窗口中单击鼠标右键来手动执行任务

  13. 不知道为什么它说“正在运行”

  14. 点击F5刷新。您将注意到“仍在运行”状态消失了。

  15. 开心起来(1小时后:p)

答案2

运行“taskschd.msc”,导航到 Powershell 并创建作业/计划。

参考

答案3

我花了一段时间才让我的计划 PowerShell 任务正常运行。

以下是对我有帮助的一些策略。

a) 使一个简单的 PowerShell 脚本运行。b
) 了解所有各种任务管理器选项卡,包括条件和操作(我认为您已经这样做了)
c) 查看各种文件的路径。


我最大的问题是没有意识到 PowerShell 是一个程序,而脚本只是一个参数。

另一个小帮助是在文件名前引入 -ExecutionPolicy Bypass,如下所示:
-ExecutionPolicy Bypass -File "D:\PShell\Process Task.ps1"

最后,我从来不确定超级用户礼仪,但这是我关于调度 PowerShell

相关内容