"Nelson H. F. Beebe" <[EMAIL PROTECTED]> writes:

>       % touch -t 1000001010000.00 /tmp/start-of-10000
>       touch: invalid date format `1000001010000.00'

The -t option specified by POSIX doesn't allow years with more than 4
digits.  You can use the GNU -d option instead:

    touch -d '10000-01-01 00:00:00' /tmp/start-of-10000 

This should work for years less than 2**31 + 1900 (though you may find
bugs in your C library and/or coreutils).  After that, you'll need a
new syntax, which is in coreutils CVS but not coreutils 5.2.1:

    touch -d '@9223372036854775807' /tmp/start-of-10000 

> It appears that ls stops reporting years somewhere after
> 0xfffffffffffff (= 2^(52) - 1), and switches to seconds.

This is because localtime stops working once the year minus 1900
doesn't fit in 'int'.

> One can debate whether that is a feature or a bug.

Yes.  It's both a feature and a bug, to some extent.


_______________________________________________
Bug-coreutils mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-coreutils

Reply via email to