유닉스 시간 형식을 이해하는 방법은 무엇입니까?

유닉스 시간 형식을 이해하는 방법은 무엇입니까?

Unix 시간 형식은 어떻게 작동합니까? 예를 들어 Unix 시간 오후 3시는 다음과 같습니다.

Normal time format <----3:00PM = 1402565420----> Unix Time

어떻게 하면 시간을 이해하게 할 수 있을까요?오후 3시?

답변1

유닉스 시간은 다음과 같이 주어진다.에포크 이후 초: 협정 세계시(UTC) 또는 1970년 1월 1일 목요일 00:00:00 이후 경과된 초 수(윤초 제외)

GNU date명령에는 다양한 시간 형식 간에 변환할 수 있는 매우 유용한 기능이 있습니다. 이것들은 모두 꽤 잘 설명되어 있으므로 man date여기서는 몇 가지 예를 들어 보겠습니다.

### "Normal" format
$ date
Thu Jun 12 11:44:23 CEST 2014
### Unix time
$ date +%s
1402566271

변환하려면 date플래그를 사용하여 특정 날짜를 지정할 수 있습니다 -d. 그러나 Unix 날짜를 얻으려면 완전한 날짜여야 합니다. Unix 시간은 전체 날짜(년, 월, 일, 시간)를 참조하므로 오후 3시는 Unix 시간으로 변환할 수 없습니다. 예를 들어, 1987년 9월 12일의 Unix 날짜를 얻으려면 다음을 수행합니다.

$ date -d "3 PM 12 September 1987" +%s
558450000

다시 "일반" 날짜로 변환합니다.

$ date -d "@558450000" 
Sat Sep 12 15:00:00 CEST 1987

관련 정보