[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [coreutils] [PATCH 1/2] stat: support printing birthtime
From: |
Jim Meyering |
Subject: |
Re: [coreutils] [PATCH 1/2] stat: support printing birthtime |
Date: |
Fri, 01 Oct 2010 17:22:38 +0200 |
Eric Blake wrote:
> On 10/01/2010 09:11 AM, Jim Meyering wrote:
>> Eric Blake wrote:
>> ...
>>> +# Whether birthtime is supported or not, it better not change even when
>>> +# [acm]time are modified. :)
>>> +touch a || fail=1
>>> +btime=$(stat --format %W a) || fail=1
>>> +atime=$(stat --format %X a) || fail=1
>>> +mtime=$(stat --format %Y a) || fail=1
>>> +ctime=$(stat --format %Z a) || fail=1
>>> +
>>> +case $(stat --format %x a) in
>>> + *.000000000*) sleep 2;; # worst case file system is FAT
>>> + *) # FIXME: sleep .1 would be sufficient if %X showed nanoseconds
>>> + sleep 1;; # should be adequate for any system with subsecond resolution
>>> +esac
>>
>> We try hard to avoid sleeping in the common case.
>> Any reason not to do what the FIXME suggests?
>>
>> case $(stat --format %X a) in
>> *.000000000) sleep 1;;
>
> You need two seconds for FAT.
Yes. FAT is already handled.
The case statement I suggested was intended to replace the "sleep 1" in
the default case (handling the FIXME) above, not to replace the existing
case statement.
>> *) sleep .1;;
>
> Done in patch 2/2 (see my other email) - you HAVE to sleep longer than
> the minimum resolution of %X...
>
>> esac
>>
>>> +touch a || fail=1
>>> +test "x$btime" = x$(stat --format %W a) || fail=1
>>> +test "x$atime" != x$(stat --format %X a) || fail=1
>
> before you can guarantee that %X changed. But if %X doesn't print
> subsecond details (as in patch 2/2), ... :)
- Re: [coreutils] [PATCH 1/2] stat: support printing birthtime, (continued)
- Re: [coreutils] [PATCH 1/2] stat: support printing birthtime, Eric Blake, 2010/10/01
- Re: [coreutils] [PATCH 1/2] stat: support printing birthtime, Pádraig Brady, 2010/10/01
- Re: [coreutils] [PATCH 1/2] stat: support printing birthtime, Eric Blake, 2010/10/01
- Re: [coreutils] [PATCH 1/2] stat: support printing birthtime, Eric Blake, 2010/10/01
- [coreutils] [PATCH] maint: update sample test template, Eric Blake, 2010/10/01
- Re: [coreutils] [PATCH] maint: update sample test template, Jim Meyering, 2010/10/01
- Re: [coreutils] [PATCH] maint: update sample test template, Eric Blake, 2010/10/01
- [coreutils] [PATCH] tests: output --version of program under test, Eric Blake, 2010/10/01
Re: [coreutils] [PATCH 1/2] stat: support printing birthtime, Jim Meyering, 2010/10/01
Re: [coreutils] [PATCH 1/2] stat: support printing birthtime, Pádraig Brady, 2010/10/04
Re: [coreutils] [PATCH 1/2] stat: support printing birthtime, Jim Meyering, 2010/10/04