tag 11098 notabug thanks On 03/26/2012 05:31 AM, Hugo Guérineau wrote: > Dear Mister, Madam, > > I'm writing to report a date computation problem. > > The command "date --date='yesterday' +%Y-%m-%d" launched this morning > between 0:00 am and 0:59 am gives the wrong result: > > root@serveur:> date --date='today' +%Y-%m-%d; date --date='yesterday' > +%Y-%m-%d > 2012-03-26 > 2012-03-24 > > This is caused by the system clock changes which happened last night. Thanks for the report. However, this is not a bug in date, but in your expectations. 'yesterday' translates to '24 hours ago', and due to your daylight savings swap, 24 hours ago really does put you into a different date. As recommended in our FAQ, https://www.gnu.org/software/coreutils/faq/#The-date-command-is-not-working-right_002e it's almost always better to base relative time computations off of noon rather than midnight (as both 11 am and 1 pm fall in the same day, even when your multiple-of-24-hours crosses a 23-hour or 25-hour day). -- Eric Blake eblake@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org