GrepBoardTools GrepBoard 매뉴얼 ↗ Log ↗

Tools / 시간·날짜

cron · systemd 시간식 풀이

crontab 시간식(*/15 * * * *, @daily)이나 systemd OnCalendar= 값(Mon..Fri 09:00)을 넣습니다. 입력하는 대로 결과가 바뀝니다.

입력한 값은 브라우저 안에서만 계산하고 서버로 보내지 않습니다.

예시
· 지금 기준

뜻

15분마다 실행

바꾸기

systemd 타이머로
OnCalendar=*-*-* *:00/15:00

무엇을 하나

  • crontab 은 Ubuntu 24.04 의 cron(Vixie cron 3.0pl1) 규칙을 따릅니다. 5칸, mon·jan 같은 이름, 범위 1-5, 목록 1,15, 간격 */15·10-50/20, 줄임말 @daily·@weekly 등.
  • systemd 는 systemd 255 의 달력 계산 코드를 옮긴 것이라, 정규화 형태가 systemd-analyze calendar 가 찍는 글자와 같고 다음 실행 시각도 같은 규칙으로 셉니다. ~(말일부터), .. 범위, / 반복, 소수 초, 끝에 붙인 시간대까지.
  • 다음 실행 시각은 고른 시간대(브라우저 · UTC · Asia/Seoul)로 브라우저 안에서 계산합니다.

예시

식종류뜻
*/15 * * * *cron15분마다
30 4 * * *cron매일 04:30
0 9 * * 1-5cron평일(월~금) 09:00
0 0 1 * 1cron매월 1일 또는 매주 월요일(OR)
Mon..Fri 09:00systemdMon..Fri *-*-* 09:00:00
*:0/15systemd*-*-* *:00/15:00 — 15분마다
*-*~01 23:00systemd매월 말일 23:00
Sun *-*-1..7 3:00systemd매월 첫째 일요일 03:00(AND)

어떻게 확인했나

공개 전에 systemd 결과는 systemd-analyze calendar --iterations=5(systemd 255)와 식 77개로, cron 결과는 Python 라이브러리 croniter 와 따로 짠 전수 검사기로 식 66개를 Asia/Seoul 기준으로 대조했습니다. cron 구현끼리 다른 부분은 숨기지 않고 화면에 경고로 띄웁니다.

자주 묻는 것

0 0 1 * 1 이 1일이 아닌 월요일에도 도는 이유는?

crontab(5): 일 칸과 요일 칸을 둘 다 정하면 둘 중 하나만 맞아도 돕니다. 「1일이면서 월요일」만 원하면 한 칸을 * 로 두고 명령 안에서 나머지를 검사하거나, systemd 타이머를 씁니다 — Mon *-*-01 00:00 은 둘 다 맞아야 돕니다.

입력한 식이 서버로 가나요?

아니요. 식을 풀고 시각을 세는 계산은 모두 브라우저 안에서 합니다. 입력값은 서버로 보내지 않고, 이 사이트가 쓰는 방문 통계(Google 애널리틱스)와 광고에도 넘기지 않습니다. 자세한 것은 개인정보 처리 안내에 있습니다.

systemd 타이머가 1분쯤 늦게 도는 이유는?

systemd 는 타이머가 깨어나는 때를 묶습니다. 유닛에 AccuracySec= 를 주지 않으면 계산된 시각보다 최대 1분 늦게 시작할 수 있습니다(systemd.timer(5)). 여기 보이는 시각은 계산된 시각입니다.