Ücretsiz Dönüştürücü

Cron İfadesi jeneratör

Cron ifadelerini tarayıcınızda anında oluşturun, açıklayın ve doğrulayın. Görsel oluşturucu ve ifade ayrıştırıcı — ücretsiz, özel ve istemci tarafı.

Cron İfadesi
0 */6 * * *
İnsan tarafından okunabilir Açıklama
Every minute
Sonraki 5 Planlanmış Çalıştırma
Calculating...

Bu araç hakkında

Cron ifadeleri, bir zamanlamayı tanımlayan beş (veya sisteme bağlı olarak altı) boşlukla ayrılmış alandır: dakika, saat, ayın günü, ay ve haftanın günü. Her alan sayısal değerleri, aralıkları, listeleri, artışları ve joker karakterleri kabul eder. Cron, 1970'lerin sonlarından beri fiili Unix planlama formatıdır ve artık Unix'in çok ötesinde, Kubernetes CronJobs, GitHub Actions, AWS EventBridge kuralları, Jenkins işleri ve üretimdeki hemen hemen tüm diğer planlama sistemleri tarafından kullanılmaktadır.

Cron ifadelerini elle okumak ve yazmak hataya açıktır. Alanlar konumsaldır, ayın günü ve haftanın günü etkileşimi açık değildir (her iki alandaki bir değer işi tetikler, her ikisini birden değil) ve hatalar sessizce doğru görünen ancak yanlış zamanlarda tetiklenen programlar üretir. Sade İngilizce programları doğru cron sözdizimine çeviren bir oluşturucu bu hataları önler.

Bu araç iki yön sunar: kullanıcı dostu bir formdan bir cron ifadesi oluşturmak (her Pazartesi sabah 9'da, iş saatlerinde her 5 dakikada bir) ve mevcut bir cron ifadesini insan terimleriyle açıklamak. Her ikisi de herhangi bir sunucu etkileşimi olmadan tarayıcınızda çalışır.

Neden Cron Oluşturucu Kullanmalı?

Cron sözdizimi yoğun ve affetmez. Yaygın hatalar arasında haftanın günü numaralandırmasının karıştırılması (sisteme bağlı olarak Pazar 0 veya 7'dir), ayın günü ve haftanın gününün VEYA anlambilimini kullandığının unutulması ve artış sözdiziminin yanlış anlaşılması (*/5, 0'dan başlayarak her 5 anlamına gelir) yer alır. Bir oluşturucu bunları yapı yoluyla yakalar; üretilen ifadeler formda tanımladığınızla eşleşir.

Mevcut ifadeleri okumak da aynı derecede zordur. 0 9 * * 1-5 gibi bir program, sözdizimini öğrendikten sonra hafta içi her gün sabah 9'da okunur, ancak cron'a aşina olmayan herkesin her alana bakması gerekir. İfadeyi insan terimleriyle açıklamak, tek seferlik etkileşimlerin sözdizimini öğrenmekten daha hızlıdır.

Nasıl kullanılır

Bir zamanlama modeli seçin, cron ifadesini alın.

  1. Oluşturma modunu seçin: Form girdilerinden (frekans, zaman, günler) bir cron ifadesi oluşturun veya mevcut bir ifadeyi insan terimleriyle açıklayın.
  2. Zamanlamayı yapılandırma: Sıklığı seçin (her dakika, her saat, her gün, her hafta, her ay, özel). Gerektiğinde saatleri, günleri ve aralıkları belirtin. Form, girdileri geçerli kombinasyonlarla sınırlandırır.
  3. Oluşturun veya açıklayın: Nesil standart cron sözdizimini (5 alan) üretir. Açıklama her alanı parçalara ayırıyor ve insan tarafından okunabilen bir özet veriyor.
  4. Zamanlayıcınızda kullanın: Oluşturulan ifadeyi Kubernetes CronJob spesifikasyonuna, GitHub Actions planına, AWS EventBridge'e veya platformunuzun zamanlayıcısına yapıştırın.

Yaygın Kullanım Durumları

Teknik Detaylar

Standart cronun beş alanı vardır: dakika (0–59), saat (0–23), ayın günü (1–31), ay (1–12), haftanın günü (0–6 veya 0–7, her ikisi de Pazar). Her alan tek bir değeri, virgülle ayrılmış listeyi, tireli aralığı, / ile artışı veya * ile joker karakteri kabul eder.

Ayın günü ve haftanın günü VEYA semantiğini kullanır: bunlardan herhangi biri joker karakter olmayan bir değere ayarlanmışsa, iş her ikisi de eşleştiğinde çalışır. Bu mantık dışıdır ancak POSIX cron davranışıyla eşleşir. Her iki alanı da ayarlamak daha dar değil, daha geniş bir program üretir.

Uzantılar uygulamaya göre değişir. Bazıları saniyeler içinde altıncı bir alanı kabul eder (Quartz, Spring); bazıları kabul ediyor mu? joker karakter alternatifi olarak; bazıları @yıllık, @aylık, @günlük kısayolları içerir. Jeneratör çoğu sisteme uygun standart 5 alanlı cron üretir.

En İyi Uygulamalar

Sık sorulan sorular

Cron ifade formatı nedir?
Standart cron 5 alan kullanır: dakika (0-59), saat (0-23), ayın günü (1-31), ay (1-12), haftanın günü (0-7, burada 0 ve 7 Pazardır). Özel karakterler: * (herhangi biri), , (liste), - (aralık), / (adım).
Bir işi 5 dakikada bir çalışacak şekilde nasıl ayarlarım?
Dakika alanında */5 kullanın: '*/5 * * * *'. /5 'her 5'inci değer' anlamına gelir. Benzer şekilde */15 = 15 dakikada bir, */2 = 2 dakikada bir.
Cron hangi saat dilimini kullanıyor?
Cron genellikle sistem saat dilimini kullanır. Linux sunucularında, aksi yapılandırılmadıkça bu genellikle UTC'dir. Bulut hizmetleri (AWS, GCP) genellikle varsayılan olarak UTC'ye ayarlanır. Her zaman sisteminizin saat dilimi ayarını kontrol edin.
Bu GitHub Eylemleri tarafından kullanılan formatla aynı mı?
GitHub Eylemleri aynı 5 alanlı formatı kullanır ancak UTC saat diliminde çalışır. AWS CloudWatch ve Kubernetes CronJobs da bu formatı kullanır. Quartz gibi bazı sistemler, saniyelerle birlikte genişletilmiş 6-7 alan formatını kullanır.
Haftanın günündeki 0 ile 7 arasındaki fark nedir?
Her ikisi de Pazar anlamına gelir. POSIX cron 0–6 veya 0–7'yi kabul eder. Özel cron uygulamanız hangisini tercih ediyorsa onu kullanın; çoğu ikisini de kabul ediyor.
Açıklayıcı standart olmayan cron için doğru mu?
Standart 5 alanlı cron'u hedefler. Quartz uzantıları (saniye cinsinden), AWS EventBridge çeşitleri ve diğer lehçeler doğru şekilde ayrıştırılmayabilir. Hedef sistemin belgelerine bakarak onaylayın.
İfadem bir sunucuya mı gönderildi?
Hayır. Oluşturma ve açıklama tarayıcınızda gerçekleşir.
Peki ya @yıllık, @aylık kısayollar?
Yaygın cron uygulamaları, ortak programlara yönelik kısayollar olarak @yıllık, @aylık, @haftalık, @daily, @saatlik ve @reboot'u destekler. Jeneratör standart 5 alanlı ifadeler üretir; planlayıcınız kabul ederse kısayolları manuel olarak değiştirebilirsiniz.