İçeriğe geç
🛠️ToolsShed

Cron İfadesi Üretici

Ön ayarlar ve sonraki çalışma süreleriyle cron ifadelerini görsel olarak oluşturur.

0 0 * * *

İnsan tarafından okunabilir açıklama

Runs every day at midnight

Bu araç hakkında

Cron ifadeleri, Unix benzeri sistemlerde, veritabanlarında ve web uygulamalarında görevleri planlamak için standart sözdizimi olarak kullanılır. Dakika, saat, gün, ay ve haftanın günü şekillerini temsil etmek için beş veya altı alan kullandıklarından, bunların özlü biçimi bunları doğru yazmayı zorlayıcı hale getirir. Bu araç, sezgisel açılır menüler ve radyo düğmeleri kullanarak istediğiniz zamanlamayı seçebileceğiniz ve karşılık gelen cron ifadesini ve işin bir sonraki ne zaman çalışacağını anında görebileceğiniz görsel bir arabirim sağlayarak bu zorluğu ortadan kaldırır.

Aracı kullanmak için, "Her dakika", "Her saat", "Belirli bir saatte günlük" veya "Özel" gibi yaygın ön ayarlardan istediğiniz planlama sıklığını seçerek başlayın. Bir ön ayar veya özel seçenek seçtikten sonra, etkileşimli denetimler kullanarak belirli zaman veya tarih kısıtlamalarını ayarlayın. Araç, anında standart cron ifade sözdizimini oluşturur ve sonraki yürütme saatini görüntüler; bu, uygulamanıza dağıtmadan önce zamanlamanızı doğrulamayı kolaylaştırır. Bu, arka planda çalışan görevler, veritabanı bakım görevleri veya doğruluğun kritik olduğu otomatik raporlar yapılandırırken özellikle faydalıdır.

Sıkça Sorulan Sorular

Kod Uygulaması

import re

def describe_cron(expression: str) -> str:
    """Parse a cron expression and return a plain-text description."""
    parts = expression.strip().split()
    if len(parts) != 5:
        raise ValueError("Expected 5 fields: minute hour day month weekday")

    minute, hour, day, month, weekday = parts

    def field(val, unit):
        if val == "*": return f"every {unit}"
        if val.startswith("*/"):
            return f"every {val[2:]} {unit}s"
        if "," in val:
            return f"{unit}s {val}"
        if "-" in val:
            lo, hi = val.split("-")
            return f"from {unit} {lo} to {hi}"
        return f"at {unit} {val}"

    months = ["", "Jan", "Feb", "Mar", "Apr", "May", "Jun",
              "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
    days = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]

    parts_desc = [
        field(minute, "minute"),
        field(hour, "hour"),
        field(day, "day-of-month"),
        field(month, "month"),
        field(weekday, "weekday"),
    ]
    return ", ".join(parts_desc)

# Examples
print(describe_cron("0 9 * * 1-5"))   # Every weekday at 9 AM
print(describe_cron("*/15 * * * *"))  # Every 15 minutes
print(describe_cron("0 0 1 * *"))     # First day of every month at midnight

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.