[linux] Perl a cas
Jalsovszky Tamas
jalsot na decef.elf.stuba.sk
Úterý Duben 24 15:56:57 CEST 2001
Ahojte!
Mohol by niekto vysvetlit ako su tie casy pod Linuxom
ratane? gmtime, mktime. Ako viem spravit prevod casu z textovej formy na
tzv. timestamp a spat bez problemov zon a bez problemov pri zmene casu
(daylight-saving)?
Teraz pouzivam skript, ktory asi nie je celkom korektny:
#!/usr/bin/perl
use POSIX;
%mon=("Jan",0,"Feb",1,"Mar",2,"Apr",3,"May",4,"Jun",5,"Jul",6,"Aug",7,"Sep",8,"Oct",9,"Nov",10,"Dec",11);
$Orig = "11:47:42.817 SK Sun Apr 22 2001";
$TIME = &Time2Timestamp($Orig,1);
print $TIME."\n";
sub Time2Timestamp {
$input = shift;
$type = shift;
$input =~ tr/:./ /s;
($hour,$min,$sec,$msec,$zone,$d,$month,$day,$year) = split(/
/,$input);
if ($type == 1 && $msec != 0) {
$sec--; #zaokruhlenie
}
if ($type == 2 && $msec != 0) {
$sec++; #zaokruhlenie
}
$input = POSIX::mktime( $sec, $min, $hour,$day,
$mon{$month},$year-1900 );
return $input;
}
Vdaka,
Tomas
Další informace o konferenci linux