如何使用 PowerShell 通过任务计划程序创建计划任务?

powershellmicrosoft technologiessoftware & coding

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

同样,使用 PowerShell 在任务计划程序中创建新任务也需要进行一些设置。

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

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

Get-Module ScheduledTasks |选择 -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

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

您可以在任务计划程序中检查。


相关文章