다른 시간대의 Crontab 일정


18

EST에서 작업을 예약하고 싶지만 실제 작업이 기본 시스템 시간대로 실행되기를 원합니다.

가장 좋은 방법은 무엇입니까?

답변:


25

crontab 파일 변수 TZ = Some / Where에 설정하기 별도의 시간대에서 별도의 작업을 실행하도록 TZ를 여러 번 설정할 수 있습니다. 예를 들면 다음과 같습니다.

TZ=UTC
* 7 * * * root date | mail root
TZ=CEST
* 7 * * * root date | mail root
TZ=PCT
* 7 * * * root date | mail root

UTC 7:00 (또는 cron 데몬이 실행 된 시간대)에 세 개의 작업이 실행되지만 각각 고유 한 TZ 변수가 있습니다.


+1은 그것을 알지 못했습니다-매우 유용합니다.
Coops

아주 좋은 팁 +1!
Janne Pikkarainen

나는 그들 모두가 같은 시간대로 다른 시간에 실행되기를 원합니다!
DD.

Agh, TZ 변수를 알고있는 크론 데몬은 이미 있습니다 : blogs.oracle.com/chrisg/entry/…
datacompboy

2
질문에 환경이 OpenSolaris라는 것을 나타내는 아무것도 보이지 않습니다 ... Vixie cron은 이것이 작동하지 않는다고 구체적으로 말합니다 .
womble

14

cron의 CENTOS 버전에서 CRON_TZ = America / New_York 행을 추가하십시오.

이렇게하면 뉴욕 시간에 따라 일정이 실행되지만 작업은 기본 시간대로 실행됩니다.


기본 시간대에 대한 팁을 주셔서 감사합니다. cron 작업을 동부 시간대에서도 실행하려면 crontab의 각 줄에 TZ 변수를 추가해야합니다. 예 :export TZ=America/New_York; unix_command; next_cmd_in_sequence
Mike S

1
하나의 crontab에 여러 CRON_TZ 설정을 가질 수 있다는 점을 언급하고 싶습니다. 매우 유용합니다. :)
Lester Cheung

0

다른 TZ환경 변수를 사용하여 별도의 cron 인스턴스를 실행 하거나 몇 시간 더하거나 빼는 법을 배울 수 있습니다.


2
그렇습니다 ... 다른 시간대에서 다른 시간에 발생하는 일광 절약 시간제 변경으로 그렇게 간단하지는 않습니다. TZ 환경 변수가 프로세스가 다른 TZ에서 실행됨을 의미한다고 생각 했습니까?
DD.

그렇습니다. 다른 TZ를 가진 프로세스는 매우 중요합니다.
womble

다른 TZ에서 크론 드 서비스를 실행하려면 어떻게해야합니까? 유닉스 초보자입니다.
DD.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.