Interwał wyrażenia CRON
Wyrażenie CRON służy do konfiguracji poszczególnych wystąpień elementu wyzwalającego. Jest ono używane głównie na potrzeby powtarzającego się wyzwalania. Jest to ciąg złożony z 6 lub 7 pól oznaczających poszczególne wartości harmonogramu. Pola te są oddzielone spacją i zawierają dowolną dozwoloną wartość z różnymi kombinacjami.
Wyrażenie CRON może być proste, na przykład: * * * * ? * lub złożone, na przykład: 0/5 14,18,3-39,52 * ? JAN,MAR,SEP MON-FRI 2012-2020
Lista wartości, których można używać w wyrażeniu CRON:
Nazwa |
Wymagane |
Wartość |
Dozwolone znaki specjalne |
---|---|---|---|
Sekundy |
Tak |
0-59 |
, - * / R |
Minuty |
Tak |
0-59 |
, - * / R |
Godziny |
Tak |
0-23 |
, - * / R |
Dzień miesiąca |
Tak |
1-31 |
, - * / ? L W |
Miesiąc |
Tak |
1-12 lub JAN-DEC |
, - */ |
Dzień tygodnia |
Tak |
0-6 lub SUN-SAT |
, - / ? L # |
Rok |
Tak |
1970-2099 |
, - * / |
Składnia wyrażenia CRON:
┌────────── Sekundy (0–59) │ ┌────────── Minuty (0–59) │ │ ┌────────── Godziny (0–23) │ │ │ ┌────────── Dzień miesiąca (1-31) │ │ │ │ ┌──────── Miesiąc (1–12 lub JAN-DEC) │ │ │ │ │ ┌────────── Dzień tygodnia (0-6 lub SUNSAT)(na przykład 0 oznacza to samo co SUN) │ │ │ │ │ │ ┌────────── Rok │ │ │ │ │ │ │ * * * * * ? * |
•0 0 0 oznacza północ (sekundy, minuty, godziny).
•Znaku ? należy używać, gdy nie można zdefiniować wartości, ponieważ została zdefiniowana w innym polu (dzień miesiąca lub dzień tygodnia).
•* oznacza co każde (sekundy, minuty, godziny, dzień miesiąca, miesiąc, dzień tygodnia, rok).
•SUN oznacza niedzielę.
W nazwach miesięcy i dni tygodnia nie jest rozpoznawana wielkość liter. Na przykład MON oznacza to samo co mon, a JAN oznacza to samo co jan. |
Znaki specjalne:
Przecinek (,)
Przecinki są używane do oddzielania pozycji na liście. Użycie na przykład „MON,WED,FRI” w szóstym polu (dzień tygodnia) oznacza poniedziałki, środy i piątki.
Łącznik (-)
Zakresy czasu. Na przykład 2012-2020 oznacza każdy rok miedzy 2012 rokiem i 2020 rokiem włącznie.
Symbol wieloznaczny (*)
Służy do wyboru wszystkich możliwych wartości w polu. Na przykład * w polu minut oznacza co każdą minutę. Symbolu wieloznacznego nie można używać w polu dnia tygodnia.
Znak zapytania(?)
W przypadku wybierania konkretnego dnia można określić dzień miesiąca lub dzień tygodnia. Nie można określić zarówno dnia miesiąca, jak i dnia tygodnia. W przypadku określenia dnia miesiąca należy użyć znaku ? dla dnia tygodnia i odwrotnie. Jeśli na przykład dany element wyzwalający ma zostać aktywowany w danym dniu miesiąca (na przykład 10.), ale nie jest ważne, jaki to będzie dzień tygodnia, należy wstawić znak 10 w polu dnia miesiąca i znak ? w polu dnia tygodnia.
Skrót (#)
Służy do określania „n-tego” dnia miesiąca. Na przykład wartość 4#3 w polu dnia tygodnia oznacza trzeci czwartek miesiąca (dzień 4 = czwartek, a #3 = trzeci czwartek miesiąca). W przypadku określenia #5, gdy niema piątego danego dnia tygodnia w miesiącu, element wyzwalający nie zostanie aktywowany w tym miesiącu.
Ukośnik (/)
Opisuje przyrosty zakresu. Na przykład 3-59/15 w drugim polu (minuty) wskazuje trzecią minutę godziny i każde 15 minut potem.
Ostatnie (L)
Użycie tego elementu w polu tygodnia umożliwia utworzenie takich konstrukcji jak ostanie piątek (5L) danego. W polu dnia miesiąca ten element określa ostatni dzień miesiąca. Na przykład 31 stycznia, 28 lutego w latach nieprzestępnych.
Roboczy dzień tygodnia (W)
Znaku W można używać w polu dnia miesiąca. Służy on do określania roboczego dnia tygodnia (poniedziałek-piątek), który jest najbliższy danego dnia. Jeśli na przykład w polu dnia miesiąca zostanie określona wartość 15W, wskazuje ona roboczy dzień tygodnia, który jest najbliżej 15-ego dnia miesiąca. Jeśli 15-y to sobota, element wyzwalający jest aktywowany w piątek 14-ego. Jeśli 15-y wypada w niedzielę, element wyzwalający jest aktywowany w poniedziałek 16-ego. Jeśli jednak w polu dnia miesiąca zostanie określona wartość 1W, a 1-y to sobota, element wyzwalający zostaje aktywowany w poniedziałek 3-go, ponieważ nie jest przekraczana granica miesiąca.
Znaki L i W można też łączyć w polu dnia miesiąca, tworząc LW, czyli ostatni roboczy dzień tygodnia w miesiącu. |
Losowo (R)
R to specjalny znak wyrażenia CRON w programie ESET PROTECT, który umożliwia określanie losowych momentów w czasie. Na przykład element wyzwalający R 0 0 * * ? * jest aktywowany każdego dnia o godzinie 00:00, ale o losowej sekundzie (0–59).
Zalecamy używanie losowych momentów w czasie, aby zapobiec łączeniu się wszystkich agentów ESET Management w tej samej chwili z serwerem ESET PROTECT. |
Prawdziwe przykłady przedstawiające różne wyrażenia CRON:
Wyrażenie CRON |
Znaczenie |
---|---|
0 0 12 * * ? * |
Uruchamiaj codziennie o godz. 12:00 (w południe). |
R 0 0 * * ? * |
Uruchamiaj każdego dnia o godzinie 00:00, ale o losowej sekundzie (0-59). |
R R R 15W * ? * |
Uruchamiaj każdego 15-ego dnia miesiąca o losowym czasie (sekundy, minuty, godziny). Jeśli 15-y to sobota, element wyzwalający jest aktywowany w piątek 14-ego. Jeśli 15-y wypada w niedzielę, element wyzwalający jest aktywowany w poniedziałek 16-ego. |
0 15 10 * * ? 2016 |
Uruchamiaj codziennie o godz. 10:15 w roku 2016. |
0 * 14 * * ? * |
Uruchamiaj codziennie co minutę od 14:00 do 14:59. |
0 0/5 14 * * ? * |
Uruchamiaj codziennie co pięć minut od 14:00 do 14:55. |
0 0/5 14,18 * * ? * |
Uruchamiaj codziennie co 5 minut od godz. 14:00 do 14:55 oraz co 5 minut od godz. 18:00 do 18:55. |
0 0-5 14 * * ? * |
Uruchamiaj codziennie co minutę od 14:00 do 14:59. |
0 10,44 14 ? 3 WED * |
Uruchamiaj o 14:10 i 14:44 w każdą środę w marcu. |
0 15 10 ? * MON-FRI * |
Uruchamiaj o 10:15 w każdy dzień powszedni (poniedziałek, wtorek, środa, czwartek i piątek). |
0 15 10 15 * ? * |
Uruchamiaj 15. dnia każdego miesiąca o godz. 10:15. |
0 15 10 ? * 5L * |
Uruchamiaj w ostatni piątek każdego miesiąca o godz. 10:15. |
0 15 10 ? * 5L 2016-2020 |
Uruchamiaj o godz. 10:15 w ostatni piątek każdego miesiąca w latach od 2016 do 2020 włącznie. |
0 15 10 ? * 5#3 * |
Uruchamiaj w trzeci piątek każdego miesiąca o godz. 10:15. |
0 0 * * * ? * |
Uruchamiaj co godzinę każdego dnia. |