Unix 타임스탬프 변환
Unix 타임스탬프(초 또는 밀리초)를 사람이 읽기 쉬운 날짜로 바꾸고, 반대 방향으로도 변환합니다. 숫자 크기를 보고 단위를 자동으로 판별해요.
타임스탬프 → 날짜
날짜 → 타임스탬프
- Unix 타임스탬프를 위쪽 입력란에 붙여넣거나, "지금 시각 사용" 버튼을 눌러 주세요.
- 단위는 "자동 감지" 상태로 두면 편해요. 값이 애매하면 초 또는 밀리초로 직접 고를 수도 있어요.
- 아래에 표시되는 UTC, 로컬, 상대 시간 행을 확인하세요.
- 반대 방향으로 바꾸려면, 아래 날짜 선택기에서 날짜를 고르고 "타임스탬프로 변환"을 누르세요.
어떤 도구인가요?
Unix 타임스탬프는 1970-01-01 00:00:00 UTC 이후 흐른 시간을 초(또는 밀리초)로 센 값입니다. 리눅스, macOS, 데이터베이스, 로그 파일, HTTP 헤더 모두 같은 기준을 써요. 이 도구는 이 숫자 값과 사람이 읽기 쉬운 날짜를 UTC와 로컬 시간대 모두로 서로 변환합니다. 자릿수를 보고 초와 밀리초를 자동으로 가려 주기도 해요.
예시
입력 (초, 10자리):
1709251200 출력:
UTC (ISO 8601) 2024-03-01T00:00:00.000Z
Local time 3/1/2024, 9:00:00 AM (in a UTC+9 locale)
Relative 2 months ago (relative to now)
Seconds 1709251200
Milliseconds 1709251200000 같은 순간을 밀리초로 표현하면 1709251200000 이에요 — 13자리입니다.
연도가 엉뚱하게 나와요 — 왜 그럴까요?
- 초와 밀리초를 혼동한 경우.
1709251200을 밀리초로 해석하면 1970년 1월이 나오고,1709251200000을 초로 해석하면 서기 56137년이 됩니다. 자릿수를 확인해 보세요 — 10자리는 초, 13자리는 밀리초예요. - 마이크로초나 나노초인 경우. 일부 시스템(파이썬의 time.time_ns(), Prometheus 등)은 16자리나 19자리 값을 내보내요. 그런 값은 1000이나 1,000,000으로 나눈 뒤 붙여넣으세요.
- 시간대(타임존) 혼동. 로컬 시간 행은 브라우저의 시간대만큼 UTC와 차이가 나요. 로그 파일에는 12:00:00인데 이 페이지에서 21:00:00으로 보인다면 UTC+9 차이 때문일 뿐, 버그가 아닙니다.
- 32비트 오버플로 (Y2038). 시간을 부호 있는 int32에 저장하는 오래된 시스템은 2147483647(2038년 1월 19일 UTC)에서 넘쳐 음수가 되고, 이를 1901년으로 해석해요.
- 앞의 0이 잘린 경우. 0012345 가 12345 로 바뀌는 식이에요. 값을 그대로, 포맷을 바꾸지 말고 붙여넣어 주세요.
- 소수점이 있는 타임스탬프. 1709251200.123 같은 값은 초 단위의 소수 부분이에요. 이 도구는 소수 부분을 밀리초로 이어서 계산해 줍니다.
자주 묻는 질문
제 타임스탬프는 초인가요, 밀리초인가요?
자릿수를 세어 보세요. 대략 2001년부터 2286년 사이 날짜라면, 초는 10자리(예: 1709251200), 밀리초는 13자리(예: 1709251200000)입니다. 큰 숫자이고 끝에 0이 세 개라면 거의 대부분 밀리초예요. 이 도구는 숫자 크기를 보고 자동으로 판별합니다 — 10^12 이상이면 밀리초로 처리해요.
Y2038 문제가 뭔가요?
부호 있는 32비트 정수에 저장된 Unix 타임스탬프는 2038년 1월 19일 03:14:07 UTC, 즉 2147483647에서 오버플로가 납니다. 시간을 int32로 저장하는 시스템(옛 C 코드, 일부 임베디드 기기, 일부 데이터베이스)은 이 값이 음수로 넘어가면서 1901년 12월 13일로 해석해요. 현대 64비트 시스템과 자바스크립트 숫자는 이 문제에서 안전합니다.
연도가 엉뚱하게 나와요, 왜 그렇죠?
대부분 단위를 잘못 맞춰서 그래요. 1709251200000 을 초로 해석하면 서기 56137년쯤이 나오고, 1709251200 을 밀리초로 해석하면 1970년 1월 20일이 나옵니다. 단위 드롭다운을 명시적으로 맞추거나 자릿수를 확인해 보세요.
타임스탬프에 시간대 정보가 포함되나요?
아니요. Unix 타임스탬프는 1970-01-01 00:00:00 UTC 이후 흐른 초를 나타내는 절대값이라, 시간대 정보를 담지 않아요. 이 도구는 UTC 표시와, 브라우저 기준의 로컬 시간 해석을 모두 보여줍니다. 동료와 9시간 차이가 난다면 그건 시간대 차이이지 버그가 아니에요.
1970년 이전 날짜를 위한 음수 타임스탬프도 가능한가요?
네, 음수 값도 지원해요. 예를 들어 -86400 은 1969년 12월 31일 UTC입니다. 음수를 받지 못하는 시스템(0으로 잘라 내는 일부 데이터베이스나 오래된 언어)도 있지만, 자바스크립트 Date 는 기본적으로 처리할 수 있어서 이 도구도 올바르게 변환해 줍니다.
타임스탬프 입력란에 ISO 8601 날짜 문자열도 넣을 수 있나요?
아니요, 타임스탬프 입력란은 숫자 형태의 epoch 값만 받아요. "날짜 → 타임스탬프" 섹션에서 달력 날짜와 시각을 고르세요. 2024-03-01T00:00:00Z 같은 ISO 8601 문자열이 있다면, 브라우저 콘솔에 new Date("...").getTime() 으로 넣어 밀리초 값을 구하거나 날짜 선택기에 붙여 보세요.
여기서 변환한 타임스탬프나 날짜를 저장하나요?
아니요. 여기서 입력한 타임스탬프나 날짜는 저희 쪽에 남지 않아요. 변환한 값은 탭을 닫거나 새로고침하는 순간 모두 사라집니다 — 로그도, 어떤 값을 찾아봤는지에 대한 기록도 없어요. 더 안심이 되신다면 브라우저 개발자 도구에서 직접 확인해 보셔도 됩니다.