1

私は現在、powershell バージョン 3 の新しいコマンドレットについてすべて学習しており、それらのいくつかを使用しようとしています。

さまざまなことをスケジュールする必要があり、新しい new-scheduledtask および new-scheduledjob コマンドレットを学習しようとしていますが、少し苦労しています。

スクリプトを使用して、サービスの再起動 (この場合は apache) をスケジュールする最も簡単な方法を誰かが見つけてくれるかどうか疑問に思っていましたか? スクリプトは、特定の条件が満たされたときに再起動をスケジュールします (基本的に、新しい apache 仮想ホストを追加するために再起動する必要があるとき)。

何か案は?現在、私はそれを実行するスクリプトブロックを作成し、ジョブを登録してから、再起動したい時刻のジョブトリガーを登録することに傾いています。これは、スクリプトが再起動をスケジュールする夜です。

ありがとう!

4

1 に答える 1

0

<#だから、これは私があなたのために持ってくると思った例です。これは毎日午前 3 時に BITS サービスを再起動します。Apache サービスの例でスクリプトを変更できると思います#>

<#ここではジョブのトリガーを作成し、毎日午前 3 時に開始するように設定しています#>

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

<# 以下では、ScheduledJob を Name で登録し、$trigger のトリガーを毎日午前 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

}

<# ジョブが登録されると、Get-ScheduledJob を使用してジョブの詳細を取得できます。TaskScheduler --> Windows --> PowerShell を使用してタスクの詳細を表示することもできます #>

Get-ScheduledJob BitsServiceRestart | fl *

<# ジョブの受信を使用して、スケジュールされたジョブの出力を受信できます #>

Receive-Job -Name BitsServiceRestart
于 2012-10-31T17:28:01.977 に答える