Powershell V3新的ScheduleJob和ScheduleTask cmdlet

时间:2012-10-22 22:36:48

标签: powershell task jobs schedule

我目前正在学习关于powershell版本3中的新cmd-lets以及尝试使用其中的一些内容。

我需要安排不同的事情,我正在尝试学习新的预定任务和新预定的cmdlet,但我遇到了一些困难。

我想知道是否有人可以通过脚本帮助我发现什么是最简单的方法来安排服务重启(在这种情况下是apache)?当满足某个条件时,脚本会安排重启(基本上当我需要重新启动以添加新的apache vhosts时)。

有什么想法吗?目前我倾向于创建一个脚本块来执行它,然后注册一个作业,然后在我想要重新启动的那一天的时间点击作业触发器,那将是脚本安排重启的那天晚上。

谢谢!

1 个答案:

答案 0 :(得分:0)

< #So这里有一个例子,我想为你带来它每天凌晨3点重启BITS服务,我猜你可以用你的apache服务示例修改脚本#>

< #Here Im为作业创建触发器并将其设置为每天凌晨3点开始#>

$trigger = New-JobTrigger -Daily -At 3am

<#在Im下面注册ScheduledJob,其名称为$触发器,触发器为每日凌晨3点,同时我将脚本放在脚本块中执行#>

Register-ScheduledJob -Name BitsServiceRestart -Trigger $trigger -ScriptBlock {

<# Suppose Lets say that you want to schedule a restart of BITS Service#>
Restart-Service -ServiceName BITS

}

&lt;#一旦注册了Job,您就可以使用Get-ScheduledJob获取Job详细信息  您还可以使用TaskScheduler查看任务详细信息 - &gt; Windows - &gt; PowerShell#&gt;

Get-ScheduledJob BitsServiceRestart | fl *

&lt;#您可以使用Recieve Job#&gt;

接收预定作业的输出
Receive-Job -Name BitsServiceRestart