如何使用 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
运行上述命令后,将创建任务。输出将如控制台中所示。
您可以在任务计划程序中检查相同的内容。
广告