X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=doc%2Fgetdate.texi;h=eae4526b48c69a36b0bd5c0343b7956175cb42af;hb=10d43fdb1b8394145a4e1a3e56df4ea7739dbb00;hp=d1d42b3e35de9785b81f2200bf1408ec5191f9ca;hpb=b13226a5eb8a7e9ec0c577b6961582389f2e4310;p=gnulib.git diff --git a/doc/getdate.texi b/doc/getdate.texi index d1d42b3e3..eae4526b4 100644 --- a/doc/getdate.texi +++ b/doc/getdate.texi @@ -1,10 +1,10 @@ @c GNU date syntax documentation @c Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -@c 2003, 2004 Free Software Foundation, Inc. +@c 2003, 2004, 2005, 2006 Free Software Foundation, Inc. @c Permission is granted to copy, distribute and/or modify this document -@c under the terms of the GNU Free Documentation License, Version 1.1 or +@c under the terms of the GNU Free Documentation License, Version 1.2 or @c any later version published by the Free Software Foundation; with no @c Invariant Sections, with no Front-Cover Texts, and with no Back-Cover @c Texts. A copy of the license is included in the ``GNU Free @@ -127,8 +127,8 @@ $ LC_ALL=C TZ=UTC0 date Mon Mar 1 00:21:42 UTC 2004 $ TZ=UTC0 date +'%Y-%m-%d %H:%M:%SZ' 2004-03-01 00:21:42Z -$ date --iso-8601=ns # a GNU extension -2004-02-29T16:21:42,692722128-0800 +$ date --iso-8601=ns | tr T ' ' # --iso-8601 is a GNU extension. +2004-02-29 16:21:42,692722128-0800 $ date --rfc-2822 # a GNU extension Sun, 29 Feb 2004 16:21:42 -0800 $ date +'%Y-%m-%d %H:%M:%S %z' # %z is a GNU extension. @@ -144,6 +144,11 @@ between round parentheses, as long as included parentheses are properly nested. Hyphens not followed by a digit are currently ignored. Leading zeros on numbers are ignored. +Invalid dates like @samp{2005-02-29} or times like @samp{24:00} are +rejected. In the typical case of a host that does not support leap +seconds, a time like @samp{23:59:60} is rejected even if it +corresponds to a valid leap second. + @node Calendar date items @section Calendar date items @@ -238,7 +243,8 @@ a number between 0 and 23, @var{minute} is a number between 0 and @samp{.} or @samp{,} and a fraction containing one or more digits. Alternatively, @samp{:@var{second}} can be omitted, in which case it is taken to -be zero. +be zero. On the rare hosts that support leap seconds, @var{second} +may be 60. @findex am @r{in date strings} @findex pm @r{in date strings} @@ -259,10 +265,13 @@ which uses @samp{12m} for noon and @samp{12pm} for midnight.) The time may alternatively be followed by a time zone correction, expressed as @samp{@var{s}@var{hh}@var{mm}}, where @var{s} is @samp{+} or @samp{-}, @var{hh} is a number of zone hours and @var{mm} is a number -of zone minutes. When a time zone correction is given this way, it +of zone minutes. You can also separate @var{hh} from @var{mm} with a colon. +When a time zone correction is given this way, it forces interpretation of the time relative to Coordinated Universal Time (@sc{utc}), overriding any previous -specification for the time zone or the local time zone. The @var{minute} +specification for the time zone or the local time zone. For example, +@samp{+0530} and @samp{+05:30} both stand for the time zone 5.5 hours +ahead of @sc{utc} (e.g., India). The @var{minute} part of the time of day may not be elided when a time zone correction is used. This is the best way to specify a time zone correction by fractional parts of an hour. @@ -283,6 +292,10 @@ Time. Any included periods are ignored. By following a non-daylight-saving time zone by the string @samp{DST} in a separate word (that is, separated by some white space), the corresponding daylight saving time zone may be specified. +Alternatively, a non-daylight-saving time zone can be followed by a +time zone correction, to add the two values. This is normally done +only for @samp{UTC}; for example, @samp{UTC+05:30} is equivalent to +@samp{+05:30}. Time zone items other than @samp{UTC} and @samp{Z} are obsolescent and are not recommended, because they @@ -457,8 +470,8 @@ integers and can represent times from 1901-12-13 20:45:52 through 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 systems, these counts ignore the presence of leap seconds. -For example, on most systems @samp{@@915148799} represents 1998-12-31 +On most hosts, these counts ignore the presence of leap seconds. +For example, on most hosts @samp{@@915148799} represents 1998-12-31 23:59:59 @sc{utc}, @samp{@@915148800} represents 1999-01-01 00:00:00 @sc{utc}, and there is no way to represent the intervening leap second 1998-12-31 23:59:60 @sc{utc}.