Toolyard

유닉스 타임스탬프란?

유닉스 타임스탬프란

유닉스 타임스탬프는 유닉스 에포크라고 부르는 1970년 1월 1일 00:00:00(UTC)부터 지난 초 수입니다. 같은 순간이면 세계 어디서나 같은 수가 되므로 API, 로그, 데이터베이스에서 씁니다. 예를 들어 1700000000은 2023년 11월 14일 22:13:20(UTC), 한국 시간으로는 11월 15일 7:13:20입니다.

초인가, 밀리초인가

초 단위 타임스탬프는 현재 10자리입니다. JavaScript, Java, 많은 API는 밀리초를 쓰며 13자리가 됩니다. 1970년 날짜나 몇천 년 뒤 날짜가 나오면 단위가 잘못되었을 가능성이 큽니다.

온라인으로 변환하기

유닉스 타임스탬프 변환기에 붙여 넣으면 초인지 밀리초인지 판단해서 UTC와 내 시간대의 날짜로 보여 줍니다.

코드나 스프레드시트에서

  • JavaScript: new Date(1700000000 * 1000)
  • Python: datetime.fromtimestamp(1700000000, tz=timezone.utc)
  • Excel이나 Google 스프레드시트: =A1/86400+DATE(1970,1,1) 뒤에 셀을 날짜 서식으로 합니다. 결과는 UTC이므로 한국 시간으로 하려면 9시간(+9/24)을 더합니다.
  • Mac이나 Linux 터미널에서 현재 시각: date +%s

2038년 문제

타임스탬프를 부호 있는 32비트 정수로 저장하는 시스템은 2038년 1월 19일 03:14:07(UTC)에 넘쳐 버립니다. 최신 시스템은 64비트를 써서 수십억 년의 여유가 있습니다.

예시

  • 0은 1970년 1월 1일 00:00:00 UTC입니다.
  • 86400은 정확히 하루 뒤인 1970년 1월 2일입니다.
  • -86400은 하루 전인 1969년 12월 31일입니다. 음수 타임스탬프는 1970년 이전 날짜입니다.
  • 2000000000은 2033년 5월 18일 03:33:20 UTC입니다.

흔한 실수

  • 타임스탬프에 시간대가 있다고 생각하기. 없습니다. 1700000000은 어디서나 같은 순간이고, 표시 방식만 시간대에 따라 달라집니다.
  • 현지 시각을 UTC로 착각해 타임스탬프 만들기. 결과가 UTC와의 시차만큼 어긋납니다. 한국이라면 정확히 9시간입니다. 변환 뒤 알고 있는 날짜로 확인하세요.
  • JavaScript의 월. new Date(2026, 0, 15)는 1월 15일입니다. 월은 0부터 셉니다.
  • 윤초. 유닉스 시간은 하루를 정확히 86,400초로 보고 윤초를 무시하므로, 실제로 흐른 모든 초를 센 값은 아닙니다.

이 가이드에서 쓰는 도구

다른 가이드