İçeriğe geç

Cron ifadesi oluştur ve açıkla

Cron zamanlamasını görsel olarak oluşturun, sade bir dille okuyun ve sonraki çalışma zamanlarını istediğiniz saat diliminde önizleyin. Standart, Quartz ve AWS söz dizimini destekler, tarayıcınızda çalışır.

Düz Türkçe ile

At 09:30, on Monday through Friday

Hazır ayarlar

Görsel olarak oluştur

Sonraki 10 çalışma

Hesaplanıyor…

Yaz saati geçişinde atlanan saatler çalışmaz; tekrarlanan saat bir kez çalışır. Gerçek cron hizmetleri burada küçük farklılıklar gösterebilir.

Özet tablo – Standart
Alanİzin verilen değerler
Dakika0–59
Saat0–23
Ayın günü1–31
Ay1–12 veya JAN–DEC
Haftanın günü0–7 (0 ve 7 = Pazar) veya SUN–SAT
SimgeAnlamı
*herhangi bir değer
,liste: 1,15 = ayın 1'i ve 15'i
-aralık: 1-5 = 1'den 5'e kadar
/adım: */15 = her 15'te bir; 5/15 = 5, 20, 35, 50
@dailymakrolar: @yearly @monthly @weekly @daily @hourly (ve @reboot)

Ayın günü ve haftanın günü birlikte kısıtlandığında, standart cron bunlardan herhangi birine uyan günlerde çalışır.

Tarayıcınızda çalışır · yükleme yokNasıl çalışır

Cron ifadesi oluşturucu nasıl kullanılır

  1. 1

    Söz dizimini seçin

    Standart cron, saniyeli cron, Quartz ya da AWS EventBridge'i seçin; isterseniz ifadeyi yapıştırın ve alan sayısının karar vermesine izin verin.

  2. 2

    Zamanlamayı yazın ya da oluşturun

    Bir ifade yazın, hazır ayarlardan başlayın ya da her alanı görsel düzenleyiciyle ayarlayın.

  3. 3

    Okuyarak doğrulayın

    Düz Türkçe açıklamaya ve vurgulanan alanlara bakarak ifadenin istediğiniz anlama geldiğinden emin olun.

  4. 4

    Sonraki çalışmaları kontrol edin

    Bir saat dilimi seçin, sonraki 10 çalışma zamanını doğrulayın, sonra ifadeyi kopyalayın.

Sınırlar ve Pro

Kaydolmadan ücretsiz: 4 söz dizimi, 12 hazır ayar ve 400'den fazla saat diliminden herhangi birinde sonraki 10 çalışma zamanı; arama 30 yıl ilerisine kadar (ya da ifadenin son yılına kadar) yapılır.

Pro reklamları kaldırır; oluşturucu her planda aynı şekilde çalışır. Pro'yu gör

Cron ifadesi oluşturucu hakkında

Cron ifadesi, bir zamanlamayı boşlukla ayrılmış birkaç alana sığdırır ve yanlış yerleştirilmiş tek bir sayı “hafta içi her gün saat 9’da” zamanlamasını “9. saatin her dakikası” haline getirebilir. Bu oluşturucuda bir ifade yazabilir ya da yapıştırabilir, ifadenin her alanı etiketlenmiş şekilde düz Türkçe ile açıklandığını anında görebilir ve ifadenin çalışacağı sonraki on zamanı listeleyebilirsiniz.

Dört söz dizimi desteklenir, çünkü bunlar gerçekten birbirinden farklıdır. Standart cron beş alandan oluşur: dakika, saat, ayın günü, ay ve haftanın günü. crontab, Linux cron hizmetleri, Kubernetes CronJob'ları ve GitHub Actions bu biçimi kullanır; @daily gibi makroları da kabul eder. Saniyeli biçim, node-cron ve croner'da olduğu gibi başa bir saniye alanı ekler. Quartz, saniyeli ve isteğe bağlı yıllı altı ya da yedi alan kullanır, Pazar gününü 1 olarak numaralandırır, gün alanlarından birinde ? ister; “son” için L, “en yakın hafta içi günü” için W ve “üçüncü Cuma” gibi ifadeler için # ekler. AWS EventBridge yıl ile biten altı alan kullanır, gün kurallarını Quartz ile paylaşır ve cron(…) biçiminde yazılır. Bir ifadeyi yapıştırdığınızda alan sayısı belirleyiciyse söz dizimi otomatik değişir; söz dizimini değiştirdiğinizde mevcut ifade mümkün olduğunca dönüştürülür.

Görsel düzenleyici her alanı her / her N / belirli değerler / aralık denetimleriyle ayarlar, hazır ayarlar ise yaygın işleri kapsar. Çalışma zamanları herhangi bir IANA saat diliminde, yaz saati boşlukları dikkate alınarak hesaplanır; EventBridge kuralları ise AWS'nin değerlendirdiği şekilde varsayılan olarak UTC kullanır.

Oluşturucu yalnızca söz dizimini ve zamanlamayı denetler: sunucunuzun saatini, makine kapalıyken kaçan çalışmaları ya da GitHub'ın en kısa aralığı gibi zamanlayıcıya özgü sınırları bilmez.

Gizlilik

İfadeler bu sayfadaki kodla ayrıştırılır, çalışma zamanları tarayıcınızın saat dilimi verileriyle hesaplanır; hiçbir şey sunucuya gönderilmez. Seçtiğiniz söz dizimi ve saat dilimi, bir sonraki ziyaretiniz için yerel depolamada saklanır.

Özellikler

Düz Türkçe açıklamalar

30 9 * * 1-5 ifadesinin ne yaptığını tahmin etmek yerine “Pazartesi–Cuma günleri 09:30’da” açıklamasını okuyun.

Sonraki 10 çalışma, her saat diliminde

UTC ya da herhangi bir IANA saat diliminde çalışma zamanları; yaz saati değişiklikleri de hesaba katılır.

Quartz ve AWS söz dizimi

Bunu destekleyen zamanlayıcılar için saniye, yıl, ?, L, W ve #.

Cron ifadesi oluşturucu: sık sorulan sorular

İşim neden beklediğimden fazla günde çalışıyor?
Standart cron'da hem ayın günü hem de haftanın günü alanı kısıtlanmışsa, iş ikisinden biri eşleştiğinde çalışır. Yani 0 9 13 * 5 yalnızca Cuma gününe denk gelen 13'ünde değil, her ayın 13'ünde ve ayrıca her Cuma çalışır. Buradaki açıklama bunu açıkça belirtir. Quartz ve AWS, iki alandan birinde ? zorunlu kılarak bu belirsizliği önler.
Cron ifadesinde */15 ne anlama gelir?
Eğik çizgi bir adımdır: dakika alanındaki */15, 0'dan başlayarak her 15 dakikada bir demektir; yani :00, :15, :30 ve :45'te çalışır. Bir başlangıç değeri bunu kaydırır: 5/15, :05, :20, :35 ve :50'de çalışır. Aralıkla birleştirildiğinde, saat alanındaki 9-17/2, 9'dan 17'ye kadar iki saatte bir anlamına gelir.
Cron hangi saat dilimini kullanır?
Klasik bir cron hizmeti, crontab içinde CRON_TZ ya da TZ ayarlanmadıkça sunucunun yerel saat dilimini kullanır. Kubernetes CronJob'ları varsayılan olarak denetleyicinin dilimini kullanır ama timeZone alanını kabul eder, GitHub Actions zamanlamaları UTC ile çalışır, EventBridge kuralları her zaman UTC kullanır, EventBridge Scheduler ise dilim seçmenize izin verir. Gerçek çalışma zamanlarını görmek için burada eşleşen dilimi seçin.
Yaz saati değişikliklerinde ne olur?
Saatler ileri alındığında atlanan saatteki yerel zamanlar yoktur, geri alındığında ise bir saat iki kez yaşanır. Bu önizleme olmayan zamanları atlar ve tekrar eden zamanları bir kez çalıştırır. Gerçek hizmetler farklılık gösterir: Vixie cron ve cronie atlanan işleri çalıştırmaya çalışır. Bu yüzden yerel saatle 01:00–03:00 arasındaki işlerde UTC'yi tercih edin ya da zamanlayıcınızın belgelerine bakın.
Bir crontab satırını Quartz ya da AWS biçimine nasıl dönüştürürüm?
Listeden yeni söz dizimini seçin, ifade dönüştürülür: Quartz için saniye alanı, AWS için yıl alanı eklenir, haftanın günü numaraları 0–6'dan 1–7'ye kayar ve kullanılmayan gün alanına ? konur. Özgün ifadede hem ayın günü hem haftanın günü ayarlıysa, hedef biçimin bu birleşimi ifade edemediği size bildirilir.