Generador de Expresiones Cron
Construye expresiones cron visualmente con presets y próximas ejecuciones.
Descripción legible
Runs every day at midnight
Acerca de esta herramienta
Las expresiones cron son la sintaxis estándar para programar tareas en sistemas tipo Unix, bases de datos y aplicaciones web. Debido a que utilizan cinco o seis campos para representar patrones de minuto, hora, día, mes y día de la semana, su formato conciso hace que sea desafiante escribirlas correctamente. Esta herramienta elimina la incertidumbre proporcionando una interfaz visual donde puede seleccionar su horario deseado utilizando cuadros desplegables y botones de radio intuitivos, viendo al instante la expresión cron correspondiente y cuándo se ejecutará el trabajo a continuación.
Para usar la herramienta, comience seleccionando su frecuencia de programación deseada entre presets comunes como "Cada minuto", "Cada hora", "Diariamente a una hora específica" o "Personalizado". Una vez que elige un preset u opción personalizada, ajuste las restricciones específicas de tiempo o fecha utilizando los controles interactivos. La herramienta genera inmediatamente la sintaxis estándar de expresión cron y muestra la próxima hora de ejecución, lo que facilita verificar su programación antes de implementarla en su aplicación. Esto es particularmente útil al configurar trabajos en segundo plano, tareas de mantenimiento de bases de datos o reportes automatizados donde la precisión es crítica.
Preguntas Frecuentes
Implementación de Código
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 midnightComments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.