OneTools Online

Что такое Unix-метка времени?

Unix-метка времени (также известная как время эпохи, POSIX-время или Unix-эпоха) — это система отсчёта времени, основанная на подсчёте количества секунд, прошедших с 00:00:00 по всемирному координированному времени (UTC) 1 января 1970 года, без учёта високосных секунд. Этот момент времени называется Unix-эпохой.

Unix-метки широко используются в операционных системах, языках программирования, базах данных и файловых системах как стандартизированный способ представления момента времени. Поскольку метки являются целыми числами, их легко хранить, сравнивать, сортировать и передавать между различными системами и языками программирования без неоднозначности часовых поясов.

Наш бесплатный онлайн-конвертер Unix-меток позволяет преобразовывать между человекочитаемыми датами и Unix-метками, поддерживая множество форматов вывода, включая ISO 8601, RFC 2822, ATOM, COOKIE и другие. Вся обработка происходит локально в вашем браузере.

Ключевые возможности

  • Метка в дату: преобразование значений Unix-меток в человекочитаемые дату и время в различных форматах
  • Дата в метку: преобразование форматированных дат обратно в Unix-метки с лёгкостью
  • Несколько форматов вывода: поддержка ATOM, COOKIE, ISO 8601, RFC 822, RFC 2822, RFC 3339 и других
  • Пакетное преобразование: конвертация нескольких меток или дат одновременно — по одной на строку, до 100 000 записей
  • Отображение текущей метки: отображение текущей Unix-метки в реальном времени с автообновлением
  • Примеры кода на многих языках: встроенные фрагменты кода для получения меток на более чем 15 языках программирования
  • Обработка на стороне клиента: все преобразования выполняются локально в вашем браузере — нулевая загрузка данных

Распространённые сценарии использования Unix-меток

  • Операции с базами данных: хранение меток в базах данных как целых чисел для эффективной индексации и сравнения — большинство СУБД, включая MySQL, PostgreSQL и SQLite, поддерживают хранение Unix-меток
  • Разработка API: метки являются стандартом для представления дат в RESTful API, JSON-полезных нагрузках и JavaScript-приложениях
  • Анализ логов: системные и прикладные логи часто используют Unix-метки — быстро преобразуйте записи логов в читаемые даты для отладки и анализа
  • Метаданные файлов: операционные системы хранят время создания, изменения и доступа к файлам как Unix-метки
  • Кроссплатформенная разработка: при создании приложений, работающих в разных часовых поясах, Unix-метки устраняют сложность преобразований времени
  • Миграция данных: при переносе данных между системами с разными форматами дат преобразование всех дат в метки обеспечивает согласованность

Как использовать конвертер Unix-меток

  1. Метка в дату: введите одну или несколько Unix-меток (по одной на строку) в поле ввода — преобразованные даты появятся мгновенно в выбранном формате
  2. Дата в метку: переключитесь в режим ввода дат и введите даты в формате ГГГГ-ММ-ДД ЧЧ:мм:сс — соответствующие Unix-метки будут вычислены автоматически
  3. Выберите формат вывода: выберите из различных предустановок форматов дат, включая ISO 8601, RFC 2822, ATOM, COOKIE и другие
  4. Копирование результатов: используйте кнопку копирования, чтобы скопировать преобразованные значения в буфер обмена

Вся обработка выполняется локально в вашем браузере. Ваши данные никогда не покидают ваше устройство.

Часто задаваемые вопросы о Unix-метках

Что произойдёт при переполнении Unix-метки в 2038 году?
Проблема 2038 года (также известная как Y2K38 или проблема миллионного года Unix) возникает из-за того, что многие системы хранят метки как 32-битные целые числа со знаком. В 03:14:07 UTC 19 января 2038 года значение переполнится с 2147483647 на -2147483648. Однако большинство современных систем теперь используют 64-битные целые числа для меток, которые не переполнятся примерно 292 миллиарда лет. Если вы поддерживаете устаревшие 32-битные системы, их следует обновить или исправить до 2038 года.
Почему 1 января 1970 года? В чём значимость этой даты?
1 января 1970 года в полночь UTC была выбрана как Unix-эпоха по историческим причинам, связанным с ранней разработкой операционной системы Unix в Bell Labs. Эта дата была удобна, так как обозначала чистую точку отсчёта, а время до 1970 года можно было представлять отрицательными числами. Конкретная дата была окончательно закреплена в начале 1970-х годов при стандартизации Unix и остаётся эпохой по сей день в связи с широким распространением.
Влияют ли часовые пояса или переход на летнее время на Unix-метки?
Нет, Unix-метки не зависят от часового пояса. Unix-метка представляет один и тот же момент времени во всём мире. Значение метки не меняется в зависимости от местоположения наблюдателя или действия летнего времени. Только при преобразовании метки в человекочитаемую дату вступают в игру часовой пояс и переход на летнее время. Это свойство делает Unix-метки такими полезными для международных систем и распределённых приложений.
В чём разница между секундами и миллисекундами в Unix-метках?
Стандартные Unix-метки времени измеряются в секундах, прошедших с начала эпохи. Однако многие среды программирования (особенно JavaScript и некоторые NoSQL-базы данных) используют точность до миллисекунды — количество миллисекунд с начала эпохи Unix. Миллисекундная метка ровно в 1000 раз больше, чем её секундный эквивалент. Наш инструмент поддерживает оба формата: если вы вводите 13-значное число (миллисекунды), оно обрабатывается как миллисекунды, а 10-значное число — как секунды.
Можно ли конвертировать даты до 1 января 1970 года?
Да, даты до 1 января 1970 года представляются отрицательными Unix-метками. Например, 31 декабря 1969 года в 23:59:59 UTC соответствует метка -1. Наш конвертер полностью поддерживает отрицательные метки для исторических дат, и все преобразования дат до 1970 года в метки корректно возвращают отрицательные значения. Диапазон поддерживаемых дат зависит от возможностей вашего браузера, но обычно охватывает период примерно от 100 000 000 года до н. э. до 100 000 000 года н. э.