O que é o tempo Unix?

O tempo Unix (também chamado de tempo de época ou timestamp POSIX) conta o tempo desde 00:00:00 UTC de 1º de janeiro de 1970. Diferentes sistemas o contam em unidades diferentes: shells Unix, PHP e a maioria dos bancos de dados usam segundos; JavaScript e Java usam milissegundos; time.time_ns() do Python, Go e InfluxDB oferecem nanossegundos; e muitas ferramentas de rastreamento e registro usam microssegundos. O mesmo instante corresponde a 1700000000 em segundos e 1700000000000000000 em nanossegundos, portanto confundir a unidade coloca a data milhares de anos fora do lugar.

Descrição da ferramenta

Esta ferramenta converte um timestamp Unix entre segundos, milissegundos, microssegundos e nanossegundos, e mostra a data correspondente. Cole um timestamp para que a unidade seja detectada pelo tamanho do valor ou escolha a unidade manualmente. Toda conversão é exata, incluindo timestamps em nanossegundos grandes demais para um número JavaScript comum.

Recursos

  • Converte entre segundos, milissegundos, microssegundos e nanossegundos em uma única etapa
  • Detecta a unidade de entrada pelo número de dígitos ou permite que você a escolha
  • Mantém a precisão total, sem erros de arredondamento, mesmo para valores de nanossegundos com 19 dígitos
  • Aceita frações (1700000000.123), valores negativos para datas anteriores a 1970 e notação científica (1.7e9)
  • Saída opcional em números inteiros para APIs que esperam inteiros
  • Mostra a data no formato ISO 8601 em UTC, com precisão de até nanossegundos, e no seu fuso horário local
  • Oculta os campos de microssegundos e nanossegundos se você não precisar deles

Como funciona

O timestamp é lido como um número decimal exato e armazenado como um número inteiro de nanossegundos, usando inteiros de precisão arbitrária em vez de ponto flutuante. Cada saída divide esse valor pelo tamanho da sua unidade e escreve o resultado exato; assim, converter milissegundos em segundos resulta em 1700000000.123, em vez de um valor arredondado. Com a opção "Somente números inteiros", o resultado é arredondado para baixo até a unidade à qual pertence, que também é a forma como o tempo Unix lida com datas anteriores a 1970: -1.5 segundos se torna -2.

Quando a unidade é detectada automaticamente, a ferramenta pressupõe uma data entre 1973 e 5138: valores com até 11 dígitos são interpretados como segundos, de 12 a 14 como milissegundos, de 15 a 17 como microssegundos e com 18 ou mais como nanossegundos.

Dicas

  • A detecção pelo tamanho não consegue diferenciar valores curtos, como um timestamp em milissegundos de antes de março de 1973 e um timestamp em segundos. Se a data parecer incorreta, escolha manualmente a unidade de entrada.
  • "Agora" preenche o horário atual na unidade que você está usando. Os navegadores fornecem o horário apenas com precisão de milissegundos, portanto os últimos dígitos dos valores em microssegundos e nanossegundos são zeros.
  • Espaços e sublinhados na entrada são ignorados, então você pode colar valores como 1_700_000_000.