2009-09-24 2 views

답변

8

UNIX cron의 API는 파일 시스템입니다. 사용자 crontab을 설치/편집하기위한 명령은 crontab입니다. crontab 명령의 주된 이유는 사용자에 대한 보안 제한을 적용하는 것입니다 (예 : /etc/cron.allow/etc/cron.deny).

시스템 cron 탭은 /etc/cron.d (및 cron.daily/weekly/monthly)에있는 파일 일뿐입니다. 특별한주의가 필요하지 않습니다. 그냥 파일을 제자리에 놓으십시오. /etc/crontab의 상단을 인용 :

# /etc/crontab: system-wide crontab 
# Unlike any other crontab you don't have to run the `crontab' 
# command to install the new version when you edit this file 
# and files in /etc/cron.d. These files also have username fields, 
# that none of the other crontabs do. 

형식은 crontab을 (5)에서 설명하는 사용자 크론 탭,과 동일하지만, 바로 명령 전에 사용자 필드.

SPACE 시간 SPACE 일-의 달 SPACES 개월 SPACE 일-의 주 : SPACE는 공백 (하나 이상) 모두 0 평균 7 일요일을 의미 어디 SPACE 사용자 SPACE 크론의 발가락에 단계하지 않습니다 정상 POSIX 파일 액세스를 사용 명령

. rename은 항상 이전 파일이나 새 파일을 가리키는 대상 이름을 가지며 절대로 아무것도 표시하지 않습니다. 따라서 파일을 새 이름으로 쓰고 이전 이름으로 바꿀 수 있습니다.

많은 프로그래밍 언어에는 crontab을 작성하는 데 도움이되는 API가 있습니다. 예 : CPAN (Perl) has several.

+1

그래서 /etc/cron.d/에 파일을 놓으면 다음 반복시 cron에서 파일을 가져 오지 않습니다. 나는 crontab을 통과 할 필요가 없다? – jldupont

+2

@ Jean-Lou Dupont : 맞습니다. /etc/cron.d에 파일을 놓을 수 있습니다. – derobert

-2

crontab을 사용하여 스크립트를 수정하는 것이 그렇게 어렵지는 않지만 그렇다고해도 그렇게되지는 않습니다. 이런 종류의 일 (시스템 기능에 대한 코드 레벨 API를 기대하는 대신 텍스트 도구를 사용하는 작업)은 실제로 유닉스 패러다임의 일부입니다.

또는 매우 간단한 "cron API"는 원하는 언어로 "sleep"하는 빠른 스크립트를 사용하여 구현할 수 있습니다. :)

0

확실히 둘러 쌀 수 있습니다. 루비 보석 Whenever을 참조하십시오.

0

웹 기반 API를 참조하는 경우 웹 앱에서 콜백/웹 훅을 트리거하는 데 사용할 수있는 REST API를 구축했습니다. SaturnAPI's Cron을 확인하십시오. 작업을 예약, 확인 및 삭제하는 HTTP 요청을합니다. 다음은 작업 예약의 예입니다.

curl -X POST \ 
    https://saturnapi.com/cron/jobs \ 
    -H saturnapi-access-key:'YOUR_SATURNAPI_ACCESS_KEY' \ 
    -d dateTimeUTC='2015:09:25 14:30' \ 
    -d dateTimeFormat='YYYY:MM:DD HH:mm' \ 
    -d callbackURL='https://your.verified.domain.com' \ 
관련 문제