hg 로그 시간대 형식

hg 로그 시간대 형식

의 경우 키를 사용하여 다음과 같이 날짜만 출력하도록 hg형식을 설정할 수 있습니다 .--template

> hg log -l1 --template "{date(date, '%Y-%m-%d %H:%M:%S')}\n"  
2016-10-07 10:22:41

%z컨트롤을 사용하여 시간대 오프셋을 출력할 수 있습니다.

> hg log -l1 --template "{date(date, '%Y-%m-%d %H:%M:%S %z')}\n"
2016-10-07 10:22:41 +0300

또한 OpenSuse date구현 에서는 %:::z더 읽기 쉬운 형식을 제어할 수 있습니다.

> date +'%Y-%m-%d %H:%M:%S %:::z'
2016-10-07 11:03:34 +03

이것은 POSIX 컨트롤은 아니지만 hg log형식화 시 유사한 효과를 얻을 수 있는 방법이 있습니까? 간단한 접근 방식이 작동하지 않습니다.

> hg log -l1 --template "{date(date, '%Y-%m-%d %H:%M:%S %:::z')}\n"  
2016-10-07 10:22:41 %:::z

에서 man date:

%:::z 숫자 시간대: 필요한 정밀도(예: -04, +05:30)

답변1

isodate 필터는 원하는 것과 가장 가까운 것 같습니다.

$ hg log -r1 --template 'date: {date|isodate}\n'
date: 2009-05-05 06:55 +0000

isodate: 날짜 키워드입니다. 날짜를 ISO 8601 형식의 텍스트 문자열로 렌더링합니다. "2006-09-04 15:13:13 -0700"과 유사한 문자열을 생성합니다.

시간대를 압축하는 것은 불가능한 것 같습니다. 이는 "SO Q&A"라는 제목의 Q&A에서도 언급됩니다.수은 제거 날짜.

따라서 가장 좋은 방법은 출력을 사용 sed하거나 awk정리하여 필요에 맞는 도움을 받는 것이라고 생각합니다.

인용하다

관련 정보