迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 >

使用任务调度器实现 PowerShell 脚本的自动化

作者:迹忆客 最近更新:2024/02/01 浏览次数:

Windows 任务计划程序可以帮助我们在特定时间或满足特定条件和触发器时自动启动程序或 PowerShell 脚本。

本文将向我们展示如何从任务计划程序运行 PowerShell 脚本并使用 Windows PowerShell 创建计划任务。


使用任务计划程序运行 PowerShell 脚本

Windows+R 打开任务计划程序控制台,然后在打开的窗口中键入 taskschd.msc。执行后,请按照以下步骤操作。

首先,单击创建任务并输入新任务的名称和描述。接下来,选中以最高权限运行框以使用管理员权限运行程序。

运行任务时,最好分配一个单独的服务帐户来执行任务,无论用户当前是否处于会话中。

创建任务

其次,单击触发器选项卡,然后单击新建... 按钮。这里我们可以指定触发任务执行的条件。

有多种方法可以开始一项任务。

  • 按计划
  • 登录时
  • 启动时
  • 空闲时
  • 在一个事件上
  • 在任务创建/修改
  • 在连接到用户会话时
  • 与用户会话断开连接
  • 在工作站锁定
  • 在工作站解锁

选择适合情况的触发器。

任务触发器

第三,单击 Actions 选项卡,然后单击 New…。在这里,我们可以指定在满足触发条件时将执行的操作。

必须完全遵循此步骤才能正确运行 PowerShell。要自动安排系统将执行的 PowerShell 脚本,请填写以下字段:

  • 行动:启动程序
  • 程序\脚本:powershell(或 powershell.exe
  • 添加参数(可选):-File(在此处指定文件的路径)(此处也放置任何其他参数)

单击确定以应用更改。

任务操作

第四,Conditions 选项卡使我们能够指定与触发器一起确定系统应如何运行任务的条件。

任务条件

第五,我们还可以在设置选项卡上为你的计划任务设置附加参数。

任务设置

六、配置任务时,系统会询问我们第一步提供的账号密码。输入密码并点击 OK 保存任务。

完成后,如果系统已通过设置触发器启动该任务,则该任务应成功运行 PowerShell 文件。


在 PowerShell 中创建计划任务

现在我们已经讨论了使用任务计划程序设置任务,让我们讨论如何使用 PowerShell 创建计划任务。

PowerShell 3.0 和 4.0 引入了用于创建计划任务的 cmdlet,例如 New-ScheduledTaskTriggerRegister-ScheduledTask

# Specify the trigger settings
$Trigger= New-ScheduledTaskTrigger -At 10:00am -Daily

# Specify the account to run the script
$User= "NT AUTHORITY\SYSTEM" 

# Specify program to run (PowerShell)
$Action= New-ScheduledTaskAction -Execute "PowerShell" -Argument "-file C:\PS\PSScript.ps1" 

# Specify the name of the task
Register-ScheduledTask -TaskName "Test Script" -Trigger $Trigger -User $User -Action $Action -RunLevel Highest -Force 

其他可能对设置新任务有用的触发选项包括:

  • -AtStartup 在 Windows 启动时触发我们的任务。
  • -AtLogon 在用户登录时触发我们的任务。
  • -Once 触发我们的任务一次。我们可以使用 -RepetitionInterval 参数设置重复间隔。
  • -Weekly 每周触发一次我们的任务。

请注意,在使用这些 cmdlet 时,不可能像我们使用任务计划程序工具那样触发事件执行。

带有 on an event 触发器的 PowerShell 脚本要复杂得多,因此这是使用 PowerShell 而不是 Task Scheduler 的缺点。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 PowerShell 中提取子字符串

发布时间:2024/02/07 浏览次数:162 分类:编程语言

本文将讨论如何使用 PowerShell 的字符串库有效地提取字符串中的子字符串。作为 Windows 管理员的一个典型场景是找出一种方法来在称为子字符串的字符串中查找特定的文本片段

在 PowerShell 中连接字符串

发布时间:2024/02/07 浏览次数:174 分类:编程语言

本文将展示我们可以在 PowerShell 中使用的所有可能的方法来连接字符串和变量。PowerShell 使用不同的运算符和函数来实现字符串连接。

在 PowerShell 中获取变量的字符串长度

发布时间:2024/02/07 浏览次数:113 分类:编程语言

本教程将教你在 PowerShell 中获取变量的字符串长度。字符串是 PowerShell 中最常用的数据类型之一;它包含字符或文本的序列。你可以使用单引号或双引号定义字符串。

使用 PowerShell 替换文件中的文本

发布时间:2024/02/07 浏览次数:118 分类:编程语言

本教程将教你使用 PowerShell 替换文件中每个出现的字符串。PowerShell 是一个强大的工具,可以执行不同的文件和文件夹操作。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便