Re: TZ, tzconfig, /etc/timezone
On Tue, 4 Apr 2006 14:24:54 +0400
Иван Лох <loh@1917.com> wrote:
> On Tue, Apr 04, 2006 at 12:47:29PM +0300, Vladimir Zolotykh wrote:
> > On Tue, 4 Apr 2006 11:52:50 +0400
> > Иван Лох <loh@1917.com> wrote:
> > > date
> >
> > А может быть так что date выводит правильно, но с daylight savings time
> > какие-то проблемы, т.е. каких-то данных о том когда переводить время
> > на летнее и с летнего на зимнее все-таки не хватает?
>
> Если в tzfile есть ошибка или он неактуальный, только.
>
> Если очень надо убедиться, что ее нет, то просто переставь дату
> на "сомнительную" разница между date --utc и date будет разная.
Думаю что так надежнее:
$ cat time.c
#include <stdio.h>
#include <time.h>
main()
{
struct tm s, tm2;
time_t time1, time2;
/* In the EU Summer time begins at 1:00 a.m. (3:00 a.m. local time)
UTC It begins the last Sunday in March, e.g. March 26 this
year */
bzero(&s, sizeof(s));
/* Summer time didn't begin yet */
s.tm_sec = 59;
s.tm_min = 59;
s.tm_hour = 2;
s.tm_mday = 26;
s.tm_mon = 2; /* 2 means March */
s.tm_year = 2006 - 1900;
time1 = mktime(&s);
printf("s.tm_isdst=%d\n", s.tm_isdst);
bzero(&s, sizeof(s));
/* Summer time has just began. */
s.tm_sec = 0;
s.tm_min = 0;
s.tm_hour = 3;
s.tm_mday = 26;
s.tm_mon = 2;
s.tm_year = 2006 - 1900;
time1 = mktime(&s);
printf("s.tm_isdst=%d\n", s.tm_isdst);
}
$ ./time
s.tm_isdst=0
s.tm_isdst=1
$
>
> --
> Иван Лох
>
>
> --
> To UNSUBSCRIBE, email to debian-russian-REQUEST@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
>
--
Vladimir Zolotykh
Reply to: