다음과 비슷한 타임스탬프가 있습니다.2022-11-09T14:41:15.555641007Z
다음과 같이 Unix epoch 시간(초)으로 변환하고 싶습니다.1668005090
다음을 사용하여 어떻게 이를 달성할 수 있습니까?세게 때리다?
답변1
다음과 같이(GNU 또는 ast-open 구현을 가정 date
):
$ date -d '2022-11-09T14:41:15.555641007Z' +%s
1668004875
답변2
macOS에서는 입력이 UTC로 알려져 있다고 가정합니다.
% t='2022-11-09T14:41:15.555641007Z';
% date -j -f "%Y-%m-%dT%H:%M:%S%z" "${t%.*}+0000" +%s
1668004875
예상대로 ${t%.*}+0000
나노초와 표시를 제거 Z
하고 시간대 표시를 추가합니다 .+0000
%z
UTC가 아닌 경우 이전 형식으로 변환한 후 사용해야 합니다.2022-11-09T14:41:15+hhmm
date -j -f "%Y-%m-%dT%H:%M:%S%z" "$t" +%s
옵션은 다음과 같습니다FreeBSD 버전date
비슷해 보여서 여기에도 적용될 수 있습니다.