Her 3 ayda bir cron işi nasıl yapılır?


Yanıtlar:


68

Aşağıdakiler, 1 Ocak, Nisan, Temmuz ve Ekim ayları arasında 03: 30'da komut dosyası çalıştırır.

30 03 01 Jan,Apr,Jul,Oct * /path/to/script

Alternatif olarak, ancak daha az belirgin

30 03 01 */3 * /path/to/script

Her üç ayda bir 03: 30'da çalışır, 1 Ocak, Nisan, Temmuz ve Ekim aylarında.


4
+1: Her zaman / gösterimin EN ÇOK açık olduğunu düşündüm ... Mümkün olan her yerde kullanırım. (Crontab'ın programlama bölümündeki kelimeler beni korkutuyor ... Yaparım: "0 0 1 3,6,9,12 * /path/to/script.bash" eğer yapamazsam / 3)
Satanicpuppy

11
*/3her dört ayda bir olmaz mıydı (12/3 = 4)?
warren

8
@ warren Hayır olmazdı. Buradaki mantık, mod gerçeğinin bir ifadesidir. Örn: eğer (12% 3 == 0): run_script (). Bunu da düşündüm! Harika soru
Goahnary

1
@ Goahnary Bir süre sonra açıklamayı da istedim :)
warren

3
@ warren gerçekten bir bölümden ziyade mod operatörü olmalı. Ama oh iyi ¯_ (ツ) _ / ¯
Goahnary 19

7

Wikipedia'nın Cron'u nasıl yapılandıracağınız konusunda güzel bir açıklaması var.

Özel durumunuz için her 3 ayda bir çalışacak bir Cron İfadesi yayınlayabilirsiniz - ayları programınıza uyacak şekilde değiştirin.

0 0 1 JAN,APR,JUL,OCT  * /path/to/script.bash

2
-1 Bu doğru cevap olarak işaretlenmiş olsa da, alanlar yanlış sırada olduğundan ve doğru sırada olsalar bile her gün gece yarısında Ocak, Nisan, Temmuz, Ekim ayları arasında (örneğin 01/01 02) çalışacaktır. / 01 ... 31/01 01/04 ..) ve sadece üç ayda bir değil. Cevabım işe yarayacaktı ancak kabul edilmedi. Üzgün ​​ben!
Richard Holloway

@Richard Holloway - sunucu arızasının gizemleri - yazım hatası bildirdiğiniz için teşekkürlerimi yanıtladım
Jon Rhoades

1
Değişikliği yansıtmak için -1'imi kaldırdım.
Richard Holloway

Ayrıca virgüllerden sonra boşluk bırakılmamalı, birçok cron uygulaması onları ayırıcı olarak görecektir. Sayısal aylar gerektiren uygulamalar ile de karşılaşabilirsiniz, bunun bugünlerde nadir olduğunu düşünüyorum.
David Spillett

@David Spillett, sonunda orada olacağımız için teşekkür eder ... Muhtemelen şimdiye kadar yaptığım en saçma cevap. Kararım olsa silersem;)
Jon Rhoades
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.