// инструмент
Unix time конвертер онлайн
Переведи timestamp в дату по UTC, Москве и своему часовому поясу или дату в timestamp. Секунды, миллисекунды и микросекунды определяются по длине числа.
сейчас, секунд с 1 января 1970 года по UTC
Всё считается в браузере, ничего не отправляется на сервер.
Что такое Unix time
Unix time, или timestamp, — число секунд, прошедших с 1 января 1970 года 00:00:00 по UTC. Оно не зависит от часового пояса: в Москве и во Владивостоке в один и тот же момент оно одинаковое. Поэтому время удобно хранить в таком виде, а в часы и даты переводить только для показа.
Секунды или миллисекунды
Сегодняшний timestamp в секундах — 10 цифр, в миллисекундах — 13. Python time.time(), PostgreSQL и date +%s отдают секунды, а JavaScript Date.now() — миллисекунды. Если дата получилась в 1970 году или в далёком будущем, скорее всего, перепутаны единицы.
Проблема 2038 года
Самое большое 32-битное знаковое число, 2147483647, — это 19 января 2038 года, 03:14:07 по UTC. Программы, которые хранят время в 32-битном целом, на следующей секунде переполнятся. Поэтому timestamp хранят в 64-битных типах — например, bigint в базе данных.
Дальше
- Даты и время в Python: datetime, часовые пояса и форматирование.
- Даты в SQL: интервалы, date_trunc и группировка по дням.
- Проверка JSON онлайн: найдёт ошибку в JSON и объяснит её по-русски.
- Cron-выражения онлайн: расписание по-русски и ближайшие запуски.
Unix time в коде
Как получить текущий timestamp и перевести 1700000000 в дату. Под каждым примером — результат последней строки для метки 1700000000.
Python
import time
from datetime import datetime, timezone
print(int(time.time())) # сейчас, в секундах
print(datetime.fromtimestamp(1700000000, tz=timezone.utc)) 2023-11-14 22:13:20+00:00
JavaScript
console.log(Math.floor(Date.now() / 1000)) // Date.now() — в миллисекундах
console.log(new Date(1700000000 * 1000).toISOString()) 2023-11-14T22:13:20.000Z
PostgreSQL
SELECT extract(epoch FROM now());
SELECT to_timestamp(1700000000) AT TIME ZONE 'UTC'; 2023-11-14 22:13:20
bash
date +%s
date -u -d @1700000000 Tue Nov 14 22:13:20 UTC 2023