Onde está usando @ antes de uma cadeia de data por segundos desde a época documentada?

2

Comandos GNU date e touch (e presumivelmente outros) usam @date para definir uma cadeia de data como segundos desde a época. Por exemplo:

$ TZ=UTC date -d@10
Thu Jan  1 00:00:10 UTC 1970

Eu estava respondendo a uma pergunta e queria apontar o OP para onde esse recurso específico estava documentado, mas não consigo encontrá-lo. Nem man date não man touch explica isso. O mais próximo disso é a seção "Exemplos" da página date man:

   Convert seconds since the epoch (1970-01-01 UTC) to a date

          $ date --date='@2147483647'

A página info para date declara que isso foi introduzido em coreutils 5.3.0, mas não explica ainda mais:

 Or if you do not mind depending on the '@' feature present since
 coreutils 5.3.0, you could shorten this to:

      date -d @946684800 +"%F %T %z"
      1999-12-31 19:00:00 -0500

Então, onde está @seconds documentado? Onde devo aprender sobre isso e onde posso apontar alguém que não? Essa menção em off-hand em man date é realmente a melhor que temos?

    
por terdon 08.09.2014 / 17:07

1 resposta

4

Isso está documentado na Seção 28.9, "Segundos desde a época" da página de informações GNU Coreutils :

info Coreutils 'Seconds since the Epoch'

Estou incluindo o primeiro parágrafo aqui: a seção diz:

If you precede a number with '@', it represents an internal time stamp as a count of seconds. The number can contain an internal decimal point (either .' or,'); any excess precision not supported by the internal representation is truncated toward minus infinity. Such a number cannot be combined with any other date item, as it specifies a complete time stamp.

    
por 08.09.2014 / 17:19