TZ에서 입력을 받아 (+/-)HHMM 형식으로 변환하고 싶습니다. 하지만 UTC와 비교하는 대신 현지 시간과 비교하고 싶습니다. 어떻게 해야 합니까?
답변1
이것은 bash
명령 date
과 형식 지정자를 사용하는 매우 간단한 연습 입니다(널리 사용되지만 아이러니 date
하게도 표준화되지 않았습니다) . strftime()
%z
TZ="아시아/도쿄" 날짜+"%z"
이렇게하면 얻을 수 있습니다현재의물론 UTC 오프셋은 일광 절약 시간제 전환을 고려합니다. 다양한 구현을 통해 date
시스템 시계를 설정하지 않고도 현재 시간 대신 임의의 타임스탬프를 표시할 수 있으므로 연중 다른 시간에 대한 UTC 오프셋을 얻을 수 있습니다.
예: FreeBSD date
에는 옵션이 있으며 -j
입력 타임스탬프를 엄격한 내림차순으로 가져옵니다(사용하지 않는 경우 기본적으로).-f
%TZ="유럽/리스본" 날짜-j +"%z" "202401060000" +0000 %TZ="유럽/리스본" 날짜-j +"%z" "202407060000" +0100 %
zdump
예를 들어 몇 가지 도구 가 더 있지만 date
여기서는 명령이 가장 명확합니다.
추가 읽기
date
. 2018년 8월 4일. BSD 공통 명령 매뉴얼. 무료 BSD.- 다른 시간대에서 "날짜" 출력 시간을 만드는 방법은 무엇입니까?
- TZ=UTC-8이 UTC+8 날짜를 생성하는 이유는 무엇입니까?
- 시간대 세부정보를 가져와야 합니다.
- "유틸리티:날짜". 쉘 명령 언어. 단일 UNIX 사양. 이슈 7. IEEE 1003.1. 2016. 그룹을 엽니다.