3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Azure Automationで平日だけ実行する

Last updated at Posted at 2016-04-11

AzureのAutomationで平日日中だけVMを稼働させたい、などというとき
管理ポータルから設定できるスケジュールでは
曜日別に7日おきに実行するようにスケジュールを設定する必要がありました。

さすがに大変なので、ジョブ自体は毎日実行にして
Runbookの内容を下記のように記述して、この処理の中で土日はスルーするようにしてみました。

weekday.ps1
#土日非実施
$UTCTime = (Get-Date).ToUniversalTime()
$TZ = [System.TimeZoneInfo]::FindSystemTimeZoneById("Tokyo Standard Time")
$LocalTime = [System.TimeZoneInfo]::ConvertTimeFromUtc($UTCTime, $TZ)
$day = $LocalTime.DayOfWeek
if ($day -eq 'Saturday' -or $day -eq 'Sunday')
{
return
}
else
{
#ここに平日実行したい処理書く
}

曜日の記述を変えれば、特定の曜日だけ処理をしない
といった使い方ができます。

ちなみに日本時間ならTokyo Standard TimeのままでOKですが
他のタイムゾーンを指定する場合は下記のコマンドをpowershellで実行すると
設定できるタイムゾーンIDの一覧を見ることができます。

[System.TimeZoneInfo]::GetSystemTimeZones()

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?