소개
cron은 Rust로 작성된 경량 크론 유사 작업 스케줄러입니다. Windows를 포함한 여러 플랫폼에서 동작하며, 단일 실행 파일과 JSON 크론탭만으로 백그라운드 서비스나 데이터베이스 없이 셸 명령을 예약 실행합니다.
상세정보
크론 구문 지원
고전적인 5필드 크론 구문을 지원하며, 분, 시, 일, 월, 요일 필드에 대해 다음 형식을 허용합니다.
- 모든 값 (*)
- 숫자 (5)
- 범위 (9-17)
- 단계 (*/15)
- 범위+단계 (0-30/10)
- 목록 (1,3,5)
또한 @yearly, @monthly, @weekly, @daily, @hourly와 같은 매크로를 제공합니다.
작업 관리 CLI
cron add, cron list, cron remove 명령으로 작업을 추가, 조회, 삭제할 수 있습니다.
포그라운드 스케줄러
cron run 명령으로 스케줄러를 실행하며, 매분 정각에 예약된 작업을 실행합니다. 작업은 시스템 셸을 통해 실행되며, 스케줄러와 분리되어 실행됩니다.
자동 시작 (Windows)
cron autostart 명령으로 로그온 시 숨김 실행되도록 설정할 수 있습니다. 관리자 권한이나 작업 스케줄러 없이 시작 폴더에 숨김 실행기를 추가합니다.
Windows (winget)
PowerShell에서 다음 명령으로 설치합니다.
winget install cuong21951.cron소스에서 설치
Rust 툴체인이 필요하며, 다음 명령으로 설치합니다.
cargo install --git https://github.com/cuong21951/cron또는 GitHub Releases 페이지에서 사전 빌드된 바이너리를 다운로드할 수 있습니다.
기본 사용법
작업을 추가하고, 목록을 확인하고, 스케줄러를 실행합니다.
cron add "*/5 * * * *" "echo hello"
cron list
cron runcron run은 포그라운드 프로세스이므로 Ctrl+C로 중지할 수 있습니다. Windows에서 로그온 시 자동 시작하려면 cron autostart를 사용합니다.
활용 예시
- 주기적인 백업 명령 실행
- 정기적인 시스템 상태 확인
- 업무 시간 동안 특정 명령 실행
지원 환경
Windows, Linux, macOS 등 크로스 플랫폼을 지원하며, x64 아키텍처용 바이너리가 제공됩니다. Windows에서는 %APPDATA%croncrontab.json에, 기타 플랫폼에서는 $XDG_CONFIG_HOME/cron/ 또는 $HOME/.config/cron/에 크론탭이 저장됩니다. CRON_HOME 환경 변수로 위치를 변경할 수 있습니다.
라이선스
MIT 라이선스로 배포됩니다.
시스템 요구사항
Windows, Linux, macOS 등 크로스 플랫폼 지원. x64 아키텍처. 설치 시 winget 또는 Rust 툴체인 필요.


