⏱️
← Rehberlere dön

Cron İfadeleri Nasıl Doğrulanır: Adım Adım Kılavuz

· Etiketler: cron-validation, cron-debugging, cron-syntax-check, schedule-validation, linux-crontab

Cron İfadeleri Nasıl Doğrulanır

Cron ifadeleri kompakttır ancak hata yapması kolaydır. Yanlış yerleştirilmiş bir eğik çizgi veya aralık dışı bir değer, bir işin yanlış zamanda çalışmasına — veya hiç çalışmamasına — neden olabilir. Dağıtımdan önce ifadeleri doğrulamak, kritik bir görev sessizce başarısız olduğunda saatlerce hata ayıklamayı önler.

Yaygın Sözdizimi Hataları

Aralık Dışı Değerler

Her alan belirli bir aralığı kabul eder. Bu aralığın dışındaki değerler geçersizdir.

# Geçersiz: dakika 60 aralık dışında (0-59)
60 * * * *

# Geçersiz: saat 24 aralık dışında (0-23)
0 24 * * *

Eksik Alanlar

Bir cron ifadesi tam olarak beş alan gerektirir. Dört alan geçersizdir, altı alan genişletilmiş sözdizimi gerektirir.

# Geçersiz: sadece 4 alan (haftanın günü eksik)
0 0 * *

# Geçersiz: uygun arka plan programı desteği olmadan 6 alanlı sözdizimi
0 0 * * * * /command.sh

Her zaman sayın: dakika, saat, ayın günü, ay, haftanın günü.

Yanlış Adım Değerleri

# Geçersiz: 0 ile adımlanamaz
*/0 * * * *

# Geçersiz: adım, alan maksimumunu aşıyor
*/61 * * * *

Adım değerleri 1'den başlamalı ve alanın maksimum değerini aşmamalıdır.

Bir Cron İfadesi Nasıl Doğrulanır

Adım 1: Alanlara Ayırın

Boşluklara göre bölün ve tam olarak beş alan olduğunu doğrulayın:

İfade: 30 6 * * 1-5
Alanlar: dakika=30, saat=6, gün=*, ay=*, haftaGünü=1-5

Adım 2: Her Alanı Doğrulayın

| Alan | İzin Verilen Aralık | Özel Karakterleri Kabul Eder | |------|---------------------|------------------------------| | Dakika | 0-59 | * , - / | | Saat | 0-23 | * , - / | | Ayın Günü | 1-31 | * , - / | | Ay | 1-12 | * , - / | | Haftanın Günü | 0-7 | * , - / |

Adım 3: Çakışmaları Kontrol Edin

Bazı ifadeler sözdizimsel olarak geçerli ancak mantıksal olarak şaşırtıcıdır:

# Ayın 15'inde VEYA her Pazar çalışır — bir VEYA koşulu
0 0 15 * 0

Ayın günü ve haftanın günü birlikte standart cron'da bir VEYA koşulu oluşturur. İş, ikisinden biri eşleştiğinde çalışır.

Adım 4: Yaklaşan Zamanları Önizleyin

Zamanlamanızı görsel olarak doğrulamak için çalıştırma zamanlarını oluşturun:

İfade: 0 2 * * 1
Sonraki 5 çalıştırma:
  1. 2026-07-27 02:00:00 (Pazartesi)
  2. 2026-08-03 02:00:00 (Pazartesi)
  3. 2026-08-10 02:00:00 (Pazartesi)

Önizleme amacınızla eşleşmiyorsa, üretime almadan önce ifadeyi düzeltin.

Çalışmayan İşleri Hata Ayıklama

Geçerli bir ifadenin çalışmaması genellikle bir sistem sorunudur:

  • İzinler — betiğin çalıştırma iznine sahip olması gerekir (chmod +x).
  • Yol — cron, minimum bir PATH kullanır. Her zaman mutlak yollar kullanın: mybackup.sh değil /usr/local/bin/mybackup.sh.
  • Ortam — cron, kabuk profillerini yüklemez. Değişkenleri crontab içinde veya betiğin kendisinde dışa aktarın.
  • Günlük kaydı — çalıştırmayı onaylamak için çıktıyı yönlendirin:
0 6 * * * /path/to/script.sh >> /var/log/cron.log 2>&1

Doğrulayıcı Aracını Kullanma

Cron ifade doğrulayıcı üç işlev sağlar:

  1. Sözdizimi doğrulaması — alan değerleri ve biçimlendirme hakkında anında geri bildirim.
  2. Zamanlama önizlemesi — geçerli tarihten itibaren yaklaşan çalıştırma zamanlarını görüntüleyin.
  3. Görsel takvim — aylık takvim üzerinde planlanan çalıştırmalar.

Sonraki birkaç çalıştırma zamanını önizlemeden hiçbir cron ifadesi dağıtılmamalıdır. Otuz saniyelik bir kontrol, sessiz zamanlama hatalarını önler.

Cron İfadeleri Nasıl Doğrulanır: Adım Adım Kılavuz - CoolTool