Her 5 Dakikada Çalışan Cron İfadesi Nasıl Yazılır?

Her 5 dakikada bir işi çalıştırmak istiyorsan cron ifadesi şu:

/5

Bu beş alan şöyle çalışır: dakika, saat, ayın günü, ay, haftanın günü. Yıldız () tüm değerleri, eğik çizgi (/) ise adım anlamına gelir. Yani `/5` dakika alanında "her 5 dakikada" demek.

Praktik örnek olarak bir cleanup işi eklemek için:

/5 /usr/local/bin/cleanup.sh

Bu, her gün 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50 ve 55. dakikalarda çalışır.

Önemli bir nokta: crontab dosyasını kaydettikten sonra geri sayım başlamaz. Cron saat ile bağlıdır. Eğer 10:03'te kaydedersen, ilk çalışma 10:05'te olur, sonra 10:10, 10:15 şeklinde devam eder. Ayrıca, bir önceki işlem hala çalışıyorsa cron bunu beklemez ve yeni işi başlatır. Yani 6 dakika süren bir komut kendisiyle çakışabilir.

Vixie cron ve cronie için bu beş alan standardıdır; saniye alanı yoktur. Systemd timer ya da Quartz gibi diğer scheduler'lar farklı söz dizimi kullanır. Detaylı bilgi için crontab(5) man sayfasına bakabilirsin.

Zaman tabanlı görevlerde saat bağlantısını anlamak hataları önler; "neden hemen başlamadı?" sorusunun cevabı burada yatıyor.

konu hakkında tepkinizi verebilirsiniz