如何使用 PowerShell 创建计划任务?


要使用 GUI 创建任务(如下面的图像所示),我们需要一些设置,例如任务名称、触发器和操作。

类似地,使用 PowerShell 在任务计划程序中创建新任务也包含多个设置。

  • 任务名称
  • 任务触发的时间
  • 操作 - 我们是否需要安排程序执行或在某些事件触发时发送电子邮件。
  • 描述 - 这是可选的。您可以添加任务的描述。
  • 注册任务 - 最后一步是注册创建的任务。

以上所有操作都使用不同的 cmdlet,但它们都是 **ScheduledTasks** 模块的一部分。要在本地或远程服务器上安排任务,您需要确保该模块存在于服务器上。

Get-Module ScheduledTasks | Select -ExpandProperty ExportedCommands

让我们开始创建任务。

  • 创建新的任务操作。
$tsaction = New-ScheduledTaskAction -Execute 'PowerShell.exe' -Argument 'C:\Temp\TestTask.ps1'
  • 提及运行脚本的用户帐户(可选)。
$User= "NT AUTHORITY\SYSTEM"
  • 创建触发任务的时间。
$tstrigger = New-ScheduledTaskTrigger -At 4:00PM -Once

您可以为例行任务提供各种时间安排,例如每天、每月或其他,如下面的示例所示。在此示例中,我们需要在下午 4:00 运行一次任务。

  • 注册计划任务。

为任务配置完所需设置后,我们需要在最后一步注册该任务,以便它使用以下命令行在任务计划程序中显示。

               

Register-ScheduledTask `
  -TaskName 'Test Task' `
  -User $User `
  -Action $tsaction `
  -Trigger $tstrigger `
  -RunLevel Highest -Force

最终脚本

$tsaction = New-ScheduledTaskAction -Execute 'PowerShell.exe' -Argument 'C:\Temp\TestTask.ps1'$User= "NT AUTHORITY\SYSTEM"

$tstrigger = New-ScheduledTaskTrigger -At 4:00PM -Once

输出

Register-ScheduledTask `
 -TaskName 'Test Task' `

  -User $User `

   -Action $tsaction `

  -Trigger $tstrigger `

   -RunLevel Highest -Force

运行上述命令后,将创建任务。输出将如控制台中所示。

您可以在任务计划程序中检查相同的内容。

更新于:2020-12-28

645 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告