Cron ifadesi oluşturucu

Basit bir formla cron ifadesi oluştur ya da elindeki ifadeyi yapıştır, ne anlama geldiğini sade Türkçeyle oku. Sonraki 10 çalışma zamanı kendi saat diliminde listelenir, yaz saati geçişleri işaretlenir.

Ücretsiz ve gizli. Her şey tarayıcında çalışır, hiçbir şey yüklenmez.

Nasıl kullanılır

  1. Zamanlamayı seçSık kullanılan bir zamanlamadan başla ya da formda her alanı ayarla: her değer, her n, belirli değerler ya da aralık.
  2. Açıklamayı okuİfade sade bir cümleyle açıklanır, böylece istediğin şeyi yapıp yapmadığını kontrol edersin.
  3. Sonraki çalışmalara bakSunucunun saat diliminde sonraki 10 çalışma zamanını kontrol et, sonra ifadeyi kopyala.

Cron ifadesi ne anlama gelir

Standart bir cron ifadesi boşlukla ayrılmış beş alandan oluşur: dakika, saat, ayın günü, ay ve haftanın günü. Yıldız her değer demektir, virgül liste ayırır (1,15), tire aralık belirtir (9-17), eğik çizgi adım verir (*/15 her 15 dakikada bir demektir). Yani 30 2 * * 1-5 ifadesi Pazartesiden Cumaya gece 02:30'da çalışır.

Herhangi bir ifadeyi yapıştırdığında araç onu bir cümleyle anlatır, alanları tek tek listeler ve sonraki on çalışma zamanını hesaplar. @daily ve @hourly gibi kısayolları da tanır. Bir yanlışlık varsa belirsiz bir sözdizimi hatası yerine hangi alanda ve hangi konumda olduğunu söyler.

Deneyimlileri bile yanıltan tuzaklar

Ayın günü ve haftanın günü birlikte ayarlandığında klasik cron ikisinden birine uyan günlerde çalışır, ikisine birden uyan günlerde değil: 0 0 13 * 5 her ayın 13'ünde ve her Cuma çalışır. Bu iki alandan biri */2 gibi yıldızla başlıyorsa iki alanın da uyması gerekir. Bu durum geçerli olduğunda açıklama bunu ayrıca belirtir.

Cron, çalıştığı makinenin saat dilimini kullanır. Saatlerin ileri alındığı ülkelerde 02:30'a kurulu bir iş o gece çalışmaz, saatler geri alındığında 01:30'a kurulu bir iş aynı saate iki kez denk gelebilir. Hangi günlerin etkilendiğini görmek için çalışma listesinde sunucunun saat dilimini seç. 31. günü olmayan aylar ise doğrudan atlanır.

Standart, saniyeli ve Quartz

Linux crontab, Kubernetes CronJob ve GitHub Actions beş alanlı biçimi kullanır. Bazı kütüphaneler başa bir saniye alanı ekler. Birçok Java zamanlayıcısının kullandığı Quartz'da saniye ve isteğe bağlı yıl alanı vardır, haftanın günleri Pazardan başlayarak 1 ile 7 arasında numaralanır ve gün alanlarından birinde ? zorunludur. Ayrıca ayın son günü için L, en yakın iş günü için W ve ayın n'inci haftanın günü için # ekler. Sözdizimini en üstten seç; değiştirdiğinde ifade mümkün olduğunca otomatik çevrilir.

Sık sorulan sorular

*/5 * * * * ne anlama gelir?

Her gün, her saatin 0, 5, 10 ve devamındaki dakikalarında, yani her 5 dakikada bir çalışır.

Cron hangi saat dilimini kullanır?

Onu çalıştıran sistemin saat dilimini. Sunucularda bu çoğu zaman UTC'dir. Kubernetes ve bazı bulut zamanlayıcıları saat dilimi seçmene izin verir. Gerçek saatleri görmek için çalışma listesinde doğru dilimi seç.

Bir işi ayın son gününde nasıl çalıştırırım?

Standart cron'da bunun için bir işaret yok. Quartz ayın günü alanında L'yi destekler, örneğin 0 0 0 L * ?. Klasik cron'da yaygın çözüm, işi 28 ile 31 arasındaki günlerde çalıştırıp tarihi betiğin içinde kontrol etmektir.

İşim neden her ay 31'inde çalışmıyor?

Çünkü birçok ay daha kısadır. Cron bu ayları son güne kaydırmaz, doğrudan atlar.

İfadem bir yere gönderiliyor mu?

Hayır. Çalışma zamanları dahil her şey tarayıcında hesaplanır.

İnternetsiz çalışır mı?

Evet. Sayfayı bir kez açtıktan sonra internet bağlantısı olmadan da çalışmaya devam eder.