Cron 표현식 생성기
프리셋과 다음 실행 시간으로 cron 표현식을 시각적으로 구성합니다.
0 0 * * *
사람이 읽을 수 있는 설명
Runs every day at midnight
이 도구 소개
Cron 표현식은 Unix 계열 시스템, 데이터베이스 및 웹 애플리케이션에서 작업을 예약하는 표준 구문입니다. 분, 시간, 일, 월, 요일 패턴을 5개 또는 6개 필드로 나타내기 때문에 간결한 형식으로 인해 올바르게 작성하기가 어려울 수 있습니다. 이 도구는 직관적인 드롭다운과 라디오 버튼을 사용하여 원하는 스케줄을 선택할 수 있는 시각적 인터페이스를 제공하며, 대응하는 cron 표현식과 다음 실행 시간을 즉시 확인할 수 있습니다.
도구를 사용하려면 먼저 "매분", "매시간", "매일 특정 시간", "사용자 지정" 등의 일반적인 프리셋에서 원하는 스케줄 빈도를 선택합니다. 프리셋 또는 사용자 지정 옵션을 선택한 후 대화형 컨트롤을 사용하여 특정 시간 또는 날짜 제약을 조정합니다. 도구는 표준 cron 식 구문을 즉시 생성하고 다음 실행 시간을 표시하므로, 애플리케이션에 배포하기 전에 일정의 정확성을 쉽게 확인할 수 있습니다. 백그라운드 작업, 데이터베이스 유지 관리 또는 자동 보고서 생성과 같이 정확성이 중요한 경우에 특히 유용합니다.
자주 묻는 질문
코드 구현
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.