시간대 값을 정의하는 더 쉬운 방법이 있습니다.올슨 데이터베이스.
되었습니다19년간 지원 (Paul Eggert)Solaris, HP-UX 및 Tru64.
첫 번째 링크에서 볼 수 있듯이 AIX는 확실히 이를 지원합니다. 그리고모든 BSD.
그러나 POSIX에서는 언급되지 않았습니다.
매우 간단합니다:
TZ=America/New_York
DST 변경에 영향을 받지 않아서 더 좋습니다. 그리고 연도별 일광 절약 시간제 변경도 고려하세요.
$ TZ="America/New_York" faketime "Sun Mar 10 03:00:00 2012" date &&
> TZ="America/New_York" faketime "Sun Mar 10 03:00:00 2013" date
Sat 10 Mar 2012 03:00:00 AM EST
Sun 10 Mar 2013 03:00:00 AM EDT
관련된:
답변1
내가 아는 한, 공개된 버그는 없습니다.오스틴 그룹 버그 추적기인용하다시간대 데이터베이스, 메일링 리스트에서 논의되지 않았으며 회의록에도 나타나지 않습니다.
POSIX는 2019년에 개선되어 0-24 범위를 초과하는 시간에 대해 Olson 데이터베이스에 기능을 포함했습니다.오류 1252더 알아보기.
TZ=:...
엄밀히 말하면 Olson 항목은 다음을 사용하여 요청해야 한다고 이해합니다 . TZ
콜론으로 시작하는 값구현 정의로 지정.
답변2
컨퍼런스콜에서 이에 관해 더 긴 논의가 있었던 것으로 기억합니다.
olson 데이터베이스를 포함해야 하는지 여부가 논의되었습니다. 데이터베이스의 복잡성으로 인해 사양의 복사본을 포함하거나 사양을 참조하는 프로토콜을 찾을 수 없습니다.
따라서 olson 기반 메서드는 여전히 허용 범위를 벗어난 확장입니다.