Cron ifadesi çözümleme
Tarayıcınızda çalışan online cron ifadesi çözümleyici. 5 alanlı bir crontab satırını (veya saniyeli 6 alanlı satırı ya da @yearly / @monthly / @weekly / @daily / @hourly takma adlarını) yapıştırın; araç ne anlama geldiğini sade bir dille açıklar, yerel saat diliminizde (UTC seçeneğiyle) sonraki 10 çalışma zamanını listeler ve her alanı ayrı ayrı gösterir. "*/15 9-17 * * MON-FRI" gibi karmaşık ifadeler de "0 9 * * *" kadar kolay çözülür. Crontab satırını sunucuya yapıştırmadan önce doğrulamak için işe yarar.
Nasıl kullanılır
4 adım5 veya 6 alanlı herhangi bir crontab satırı ya da bir @takma ad.
İfadenin ne zaman çalışacağının sade açıklaması.
Gelecek on çalışma zamanı, varsayılan olarak yerel saatinizle.
Sunucunuzdaki cron’un beklediği zamanla karşılaştırın.
Cron ifadesini okuyun — sade açıklama, gelecek on çalışma zamanı, alan alan döküm
Zamanlamadan ifade oluştur
Açıklama
Alanlar
Sonraki 10 çalışma (yerel saatiniz)
Alan başvurusu
* * * * * = Dakika (0-59) · Saat (0-23) · Ayın günü (1-31) · Ay (1-12 (veya JAN-DEC)) · Haftanın günü (0-6 (Pazar=0, ayrıca SUN-SAT))Özel karakterler: * (herhangi) , (liste) - (aralık) / (adım)
Neler yapabilirsiniz
Tipik kullanımlar
- "*/15 0-6 * * MON-FRI" gibi karmaşık bir zamanlamayı canlı sunucuya yapıştırmadan önce doğrulayın.
- Zamanlanmış bir işin çevresinde dağıtım penceresi planlamak için sonraki 10 çalışma zamanını bulun.
- Depoya yorum bırakmadan eklenmiş bir cron ifadesinin ne yaptığını çözün.
- Nöbet çizelgesi için sunucu saatiyle yerel saat arasında dönüşüm yapın.
- Saniyeli bir Quartz ifadesi oluşturun ve Java uygulamasına göndermeden önce doğrulayın.
Neden bu araç
Çoğu cron aracı ya ifadeyi açıklar ya da sonraki çalışmaları listeler; ikisini birden yapmaz. Burada ikisi de var, üstüne bir rakamı yanlış girdiğiniz alanı bulmanıza yardım eden alan alan döküm geliyor. Hesaplama tarayıcınızda çalışır, istek sınırı yoktur. Klasik 5 alanlı crontab da, Quartz tarzı saniyeli 6 alanlı ifade de desteklenir.
Sık sorulan sorular
5 alanlı ve 6 alanlı cron arasındaki fark nedir?
Geleneksel Unix cron 5 alan kullanır: dakika, saat, ayın günü, ay, haftanın günü. Quartz (Java zamanlayıcıları, Spring Boot vb.) başa bir "saniye" alanı ekleyerek 6 alana çıkar. Araç otomatik algılar: 5 parça → klasik, 6 parça → Quartz.
Çözümlenen zamanlamanın saat dilimi nedir?
Cron ifadelerinin kendi saat dilimi yoktur — sunucu onları kendi yerel saat diliminde yorumlar. Araç, sonraki çalışmaları varsayılan olarak tarayıcınızın yerel saat diliminde gösterir ve UTC seçeneği sunar. Sunucunuz farklı bir dilimdeyse saatler değişir; crontab’ınızdaki TZ= satırına veya kapsayıcının TZ ortam değişkenine bakın.
"*/5" neden "her 5 birimde bir" demek?
"/" adım karakteri "*" ile birleşince "alanın en küçük değerinden başla ve N’er N’er ilerle" anlamına gelir. Yani dakika alanındaki */5 şu değerlerdir: 0, 5, 10, 15, … 55. 10/5 de yazabilirsiniz (10’dan başla, 5’er ilerle: 10, 15, 20, …).
"L" / "W" / "#" değiştiricileri (ayın son hafta içi günü vb.) ne olacak?
Bunlar Quartz eklentileridir (Spring Scheduler, Hangfire vb.) ve POSIX cron’un parçası değildir. Aracın şu anki sürümü bunları desteklemez. Zamanlayıcınız bunları kullanıyorsa doğrulamayı zamanlayıcının kendi arayüzünde yapın.
Ayın günü ve haftanın günü neden "VEYA" ile filtreleniyor?
POSIX cron’un bir tuhaflığı: hem ayın günü hem haftanın günü kısıtlanmışsa ("*" değilse), iş ikisinden biri eşleştiğinde çalışır. Yani "0 0 1 * MON" her ayın 1’inde VE her pazartesi çalışır — birçok kişi bunu yanlış okur.
Bu konudaki uzmanlar
Konuyu bir uzmanla birlikte çalış — online ders veya danışmanlık, saatler senin saat diliminde gösterilir.
Elbette yapabiliriz! Fikrinizle birlikte kısa bir mesaj gönderin. Ayrıntılı konuşmak istiyorsanız e-posta adresinizi bırakın, size geri döneceğiz. Anonim kalabilirsiniz.