1

我目前正在学习有关 powershell 版本 3 中新 cmd-let 的所有信息,并尝试使用其中的一些。

我需要安排不同的事情,我正在尝试学习新的 new-scheduledtask 和 new-scheduledjob cmdlet,但我遇到了一点困难。

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

有任何想法吗?目前,我倾向于创建一个脚本块来执行此操作,然后注册一个作业,然后在我想要重新启动的一天中的某个时间(即脚本安排重新启动的那天晚上)注册一个作业触发器。

谢谢!

4

1 回答 1

0

<#所以这是我想为您提供的一个示例,它每天凌晨 3 点重新启动 BITS 服务,我想您可以使用您的 apache 服务示例修改脚本#>

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

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

<# 下面我在每天凌晨 3 点使用名称和 $trigger 的触发器注册 ScheduledJob,还将要执行的脚本放置在脚本块内#>

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

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

}

<# 注册 Job 后,您可以使用 Get-ScheduledJob 获取 Job 详细信息您还可以使用 TaskScheduler --> Windows --> PowerShell #> 查看任务详细信息

Get-ScheduledJob BitsServiceRestart | fl *

<# 你可以使用 Recieve Job 接收 Scheduled Job 的输出 #>

Receive-Job -Name BitsServiceRestart
于 2012-10-31T17:28:01.977 回答