Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Eugene Perevyazko                    2:5020/400     03 Apr 2000  19:48:51
 To : All
 Subject : Re: FreeBSD-3.3, date...
 -------------------------------------------------------------------------------- 
 
 On 3 Apr 2000, Alexander S. Migunov wrote:
 
 > Hикто не видал такой бяки?
 > В 0:00 1 апреля 2000 (это не шутка!) команда "date -v-1d +%Y%m%d" выдала
 > "20000229".
 > Машина: FreeBSD-3.3-REL, timezone - MSD (+0400) - Moscow.
 
 Подтверждаю - FBSD-3.4Stable, timezone - EET/EEST (+0100/+0200), глюк
 несомненный:
 
 проверяем дату:
   $ date -r `date -v 01d -v 04m -v 00H -v 00M +%s`
   сб   1 апр 2000 00:00:05 EEST
 просим отнять 1 день - глюк:
   $ date -r `date -v 01d -v 04m -v 00H -v 00M +%s` -v -1d
   вт  29 фев 2000 23:00:10 EET
 просим отнять 1 час - глюк:
   $ date -r `date -v 01d -v 04m -v 00H -v 00M +%s` -v -1H
   ср   1 мар 2000 22:00:14 EET
 
 то есть 1 Апреля с 0:00 по 00:59 коррекция времени неверна,
 но уже в 01:00 все работает как надо:
   $date -r `date -v 01d -v 04m -v 01H -v 00M +%s` -v -1d
   пт  31 мар 2000 01:00:53 EEST
 
 если делать вычисления над unix date средствами bash - все OK:
   $ date -r $(( `date -v 01d -v 04m -v 00H -v 00M +%s` - 3600 ))
   пт  31 мар 2000 23:00:57 EEST
   $ date -r $(( `date -v 01d -v 04m -v 00H -v 00M +%s` - 24*3600 ))
   пт  31 мар 2000 00:00:43 EEST
 
 Что такое, как лечить? Если найду время - пороюсь в сорцах, но за
 державу ведь обидно! ;) 
 
 -- 
 Eugene Perevyazko
 
 --- ifmail v.2.15dev4
  * Origin: MiComp LTD. (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: FreeBSD-3.3, date...   Eugene Perevyazko   03 Apr 2000 19:48:51 
Архивное /ru.unix.bsd/6155758d5747.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional