Gerador de Expressões Cron
Construa expressões cron visualmente com predefinições e próximas execuções.
Descrição legível por humanos
Runs every day at midnight
Sobre esta ferramenta
As expressões cron são a sintaxe padrão para agendar tarefas em sistemas tipo Unix, bancos de dados e aplicações web. Como usam cinco ou seis campos para representar padrões de minuto, hora, dia, mês e dia da semana, seu formato conciso torna desafiador escrevê-las corretamente. Esta ferramenta elimina a adivinhação fornecendo uma interface visual onde você pode selecionar seu cronograma desejado usando menus suspensos e botões de opção intuitivos, vendo instantaneamente a expressão cron correspondente e quando o trabalho será executado a seguir.
Para usar a ferramenta, comece selecionando sua frequência de agendamento desejada entre presets comuns como "A cada minuto", "A cada hora", "Diariamente em uma hora específica" ou "Personalizado". Após escolher um preset ou opção personalizada, ajuste as restrições específicas de tempo ou data usando os controles interativos. A ferramenta gera imediatamente a sintaxe de expressão cron padrão e exibe a próxima hora de execução, facilitando a verificação de seu cronograma antes de implantá-lo em sua aplicação. Isso é particularmente útil ao configurar trabalhos em background, tarefas de manutenção de banco de dados ou relatórios automatizados onde a precisão é crítica.
Perguntas Frequentes
Implementação 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.