すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:Cron 式

最終更新日:Aug 28, 2024

ECS (Elastic Compute Service) コンソールで、またはAPI操作を呼び出してCloud Assistantコマンドを実行する場合、cron式を指定して、コマンドを実行するスケジュールを定義できます。 このトピックでは、cron式の基本構文について説明し、cron式の使用方法の例を示します。

cron式の基本構文

cron式は、ジョブの実行のスケジュールを表す文字列です。 cron式は、6つまたは7つのフィールド (時間単位) で構成されます。

Cron式は次の形式です。

<Seconds> <Minutes> <Hours> <Day-of-month> <Day-of-week> <Month> <Year>
  • <Year>: このフィールドはオプションです。

  • 各フィールドに関する次の項目に注意してください。

    • 各フィールドには、特定の値、範囲、増分、または特殊文字を含めることができます。

    • フィールド内の複数の値はコンマ (,) で区切ります。

    • 各フィールドは、最大1つの先行ゼロをサポートします。 たとえば、フィールドでは01と02が許可されますが、001と002は許可されません。

cron式のフィールドでサポートされている値の範囲と特殊文字については、このトピックの「フィールドの有効値」および「」をご参照ください。

フィールドの有効値

次の表に、cron式のフィールドでサポートされている有効な値の範囲と特殊文字を示します。

フィールド

必須

値の範囲

サポートされている特殊文字

必須

[0, 59]

* , - /

必須

[0, 59]

* , - /

時間

必須

[0, 23]

* , - /

月の日

必須

[1, 31]

* , - / ? L W

必須

[1, 12] または [JAN, DEC]

* , - /

曜日

必須

[1、7] または [MON、SUN] 。 Cloud Assistantコマンドの場合、[1、7] の1は月曜日を示し、7は日曜日を示します。

重要

cron式の使用法と意味は、システム、フレームワーク、またはツールによって異なります。 Cloud Assistantコマンド以外のシナリオでは、[1, 7] の1と7の意味は異なる場合があります。 1は日曜日を示し、7は土曜日を示します。

* , - / ? L#

任意

[今年、2099]

* , - /

特殊文字

cron式の各フィールドは、特定の意味を持つ特殊文字をサポートします。

特殊文字

意味

*

すべての値を含みます。

[月] フィールドのアスタリスク (*) には、毎月が含まれます。

,

追加の値を含みます。

Minutesフィールドでは、5、20は時間の5分と20分を示します。

-

範囲を指定します。

Minutesフィールドでは、5-20は時間の5分から20分を示します。

/

増分を指定します。

Minutesフィールドでは、0/15は15分ごとを示し、その時間から始まります。 Minutesフィールドでは、3/20は、1時間の3分目から始まる20分ごとを示します。

?

任意の値を指定し, 日付および曜日のフィールドでのみ使用できます。

[月の日] フィールドと [週の日] フィールドのいずれかに値を指定した場合、日付の競合を避けるために、もう一方のフィールドに疑問符 (?) を入力します。

L

[月の日] または [週の日] フィールドで、月または週の最終日を指定できます。

重要

ロジックエラーを防ぐため、L文字を使用する場合は、値のリストまたは範囲を指定しないでください。

  • 月の日フィールドにおいて、Lは月の最終日を示す。 曜日フィールドにおいて、Lは、日曜日 (SUN) である週の最終日を示す。

  • Lは他の値と共に使用することができる。 たとえば、曜日フィールドでは、6Lはその月の最後の土曜日を示します。

W

月の特定の日に最も近い曜日を指定します。 W文字が示す曜日は、指定された月と同じ月です。 LWは、指定された月の最後の平日を示します。

[月の日] フィールドに5Wを指定した場合、月の5日が土曜日になると、月の4日目である最も近い金曜日にタスクがトリガーされます。 月の5日が日曜日である場合、タスクは月の6日である最も近い月曜日にトリガーされます。 月の5日が平日になる場合、タスクは月の5日にトリガーされます。

#

月の曜日を指定します。

重要

この文字は、曜日フィールドでのみ使用できます。

曜日フィールドでは、4#2は月の第2木曜日を示します。

シナリオ

毎日特定の時間にタスクを実行します。

毎日10:15にタスクを実行します。

0 15 10? * *

毎日12:00にタスクを実行します。

0 0 12 * *?

毎日特定の時間にタスクを実行します。

毎日10:00、14:00、16:00にタスクを実行します。

0 0 10,14,16 * *?

一定の間隔でタスクを実行します。

毎日09:00から17:00まで30分ごとにタスクを実行します。

0 0/30 9-17 * *?

毎日14:00から14:59まで毎分タスクを実行します。

0*14 * *?

毎日14:00から14:05まで毎分タスクを実行します。

0 0-5 14 * *?

毎日14:00から14:55まで5分ごとにタスクを実行します。

0 0/5 14 * *?

毎日14:00から14:55までと18:00から18:55まで5分ごとにタスクを実行します。

0 0/5 14,18 * *?

月または週の特定の日にタスクを実行します。

毎週水曜日の12:00にタスクを実行します。

0 0 12? * WED

毎月15日の10:15にタスクを実行します。

0 15 10 15 *?

毎月最終日の10:15にタスクを実行します。

0 15 10 L *?

毎月最後の土曜日の10:15にタスクを実行します。

0 15 10? * 6L

毎月第3土曜日の10:15にタスクを実行します。

0 15 10? * 6#3

特定の年の特定の日にタスクを実行します。

毎年3月の毎週水曜日の14:10と14:44にタスクを実行します。

0 10,44 14? 3 WED

2022で毎日10:15にタスクを実行します。

0 15 10? * * 2022

毎年毎日10:15にタスクを実行します。

0 15 10? * * *

2022で毎日14:00から14:55までと18:00から18:55まで5分ごとにタスクを実行します。

0 0/5 14,18 * *? 2022

2022と2023で毎月第3土曜日の10:15にタスクを実行します。

0 15 10? * 6#3 2022、2023

2025に2022で毎日9:00から17:30まで30分ごとにタスクを実行します。

0 0/30 9-17 * *? 2022-2025

2022から2年ごとに3月の毎週水曜日の14:10と14:44にタスクを実行します。

0 10,44 14? 3 WED 2022/2