Что такое Unix-время?
Unix-время (его также называют epoch time, временем эпохи или POSIX-временем) — это количество секунд, прошедших с 00:00:00 UTC 1 января 1970 года, без учёта секунд координации. Именно так компьютеры универсально хранят момент времени: независимо от часовых поясов и форматов календаря. Этот калькулятор принимает метку времени в миллисекундах (именно такую единицу возвращает большинство языков программирования — например, Date.now() в JavaScript) и переводит её в секунды, минуты и дни от начала эпохи.
Как пользоваться
Введите Unix-время в миллисекундах в поле и нажмите «Рассчитать». Калькулятор делит значение на 1000 с округлением вниз и выдаёт целое число Unix-секунд — самый распространённый формат для баз данных, API и команды date +%s в Linux. В таблице результатов также показано исходное значение в миллисекундах, а ещё прошедшие минуты и дни — это удобно для быстрой проверки.
Разбор формулы
Основной перевод выглядит так: $$\text{Seconds} = \left\lfloor \frac{\text{Time (ms)}}{1000} \right\rfloor$$ Деление на 1000 переводит миллисекунды в секунды, а округление вниз (floor) отбрасывает дробную часть, чтобы получить целочисленную метку в секундах. Минуты считаются по формуле \(\left\lfloor \frac{M}{60000} \right\rfloor\), а дни — по \(\left\lfloor \frac{M}{86\,400\,000} \right\rfloor\), ведь в сутках 86 400 секунд = 86 400 000 мс.
Пример расчёта
Допустим, \(M = 1\,700\,000\,000\,000\). Тогда $$\text{Seconds} = \left\lfloor \frac{1\,700\,000\,000\,000}{1000} \right\rfloor = 1\,700\,000\,000$$ секунд, что соответствует 14 ноября 2023 года. Минут от эпохи = \(\left\lfloor \frac{1\,700\,000\,000\,000}{60000} \right\rfloor = 28\,333\,333\), а дней = \(\left\lfloor \frac{1\,700\,000\,000\,000}{86\,400\,000} \right\rfloor = 19\,675\).
Частые вопросы
Почему где-то секунды, а не миллисекунды? Старые системы и многие API (Unix, PostgreSQL, поле exp в JWT) хранят секунды, тогда как браузеры и Java используют миллисекунды. Переход между ними — это просто умножение или деление на 1000.
А как же секунды координации (leap seconds)? Unix-время их игнорирует, поэтому счёт получается ровным и линейным — удобным для вычислений, но не идеально совпадающим с астрономическим UTC.
Что случится в 2038 году? Системы, хранящие счётчик секунд в знаковом 32-битном целом, переполнятся 19 января 2038 года. Современные 64-битные системы эта «проблема 2038 года» не затрагивает.