Alex Henry wrote:
> The @ option is not mentioned in the `date` command man page. For example:
> date -d @355695704

It is mentioned there.  See this part:

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

              $ date --date='@2147483647'

Additionally the GNU date man page is only meant as an abbreviated
reference.  As the man page says:

       The full documentation for date is maintained as a Texinfo
       manual.  If the info and date programs are properly installed
       at your site, the command

              info coreutils 'date invocation'

       should give you access to the complete manual.

The full documentation there describes this in detail:

  28.9 Seconds since the Epoch
  ============================

  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.

     Internally, computer times are represented as a count of seconds
  since an epoch--a well-defined point of time.  On GNU and POSIX
  systems, the epoch is 1970-01-01 00:00:00 UTC, so `@0' represents this
  time, `@1' represents 1970-01-01 00:00:01 UTC, and so forth.  GNU and
  most other POSIX-compliant systems support such times as an extension
  to POSIX, using negative counts, so that `@-1' represents 1969-12-31
  23:59:59 UTC.

     Traditional Unix systems count seconds with 32-bit two's-complement
  integers and can represent times from 1901-12-13 20:45:52 through
  2038-01-19 03:14:07 UTC.  More modern systems use 64-bit counts of
  seconds with nanosecond subcounts, and can represent all the times in
  the known lifetime of the universe to a resolution of 1 nanosecond.

     On most hosts, these counts ignore the presence of leap seconds.
  For example, on most hosts `@915148799' represents 1998-12-31 23:59:59
  UTC, `@915148800' represents 1999-01-01 00:00:00 UTC, and there is no
  way to represent the intervening leap second 1998-12-31 23:59:60 UTC.

Bob

Attachment: signature.asc
Description: Digital signature

Reply via email to