On 01/06/11 18:11, Rick Stanley wrote:
> The date command is very useful. A lot of features and options which I
> take advantage of as I need them. Every once in a while I need to use
> the command to convert a UNIX Epoch Date to a normal date, so I attempt
> to use the command as:
>
> date -d 1306947372
>
> Which results in the error message, "date: invalid date `1306947372'".
>
> Neither 'date --help' or 'man date' shows that the command should have
> been written as:
>
> date -d @1306947372
>
> I needed to do a Google search to see what I was doing wrong. (My memory
> is not as good as it used to be!) ;^)
>
> I don't know why this ('@') is needed, since the date command recognizes
> many different date formats without specifying the format. For
> completeness of the help and man page, please add a line explaining that
> when passing a UNIX Epoch Date to the -d option, you need to prefix the
> date with a '@'.
>
> Thank you for your time and consideration!
You need the '@' to disambiguate. Consider fir example:
date --date=1243
date --date=@1234
Unfortunately the date input formats are many and varied,
and I don't think it's worth getting specific in the man page.
The man page currently says:
"The date string format is more complex than is easily documented
here but is fully described in the info documentation."
So I'll close this as adequately documented.
thanks,
Pádraig.