Ich finde dieses "/bin/date" sowieso sehr unglücklich, denn ein localtime(time) ist viel zuverlässiger, schneller und portabler.
Versuch' doch mal das Programm auf time umzuprogrammieren, zur Not kannst du's mir ja mal zuschicken...chop ($jDate =
$dateCmd +"%j"
);
$HITBAK = "$bakDir/hit$jDate.bak";}
chop ($dayStamp =$dateCmd +"%e"
); $dayStamp =~ s/\s*//g;
chop ($hourStamp =$dateCmd +"%H"
);
chop ($timeStamp =$dateCmd +"%a %D %H%M%Z"
);
chop ($dateStamp =$dateCmd +"%Y%m%d"
);
$yearStamp = substr ($dateStamp,0,4);
$monthStamp = substr ($dateStamp,4,2);
$month = $monthStamp +0;$HITCFG = "$hitmatDir/hit.cfg";
$HITCNT = "$hitmatDir/hit.cnt";
$HITDAT = "$hitmatDir/hit$month.dat";dass ist der teil, der das skalar §dateCmd weiterverwendet. irgendwelche ideen?
Ojeoje... da ging aber einer nach dem Motto "Warum einfach, wenn's auch kompliziert geht?"...
($sec,$min,$hourStamp,$dayStamp,$monthStamp,$yearStamp,$wday,$yday,$isdst) = localtime(time);
$monthStamp++;
$month=$monthStamp;
$yearStamp+=1900;
$dateStamp = sprintf("%04d%02d%02d",$yearStamp,$monthStamp,$dayStamp);
$timeStamp = localtime(time);
($timeStamp bringt evtl. etwas andere Werte als das date-Kommando, aber das sollte in diesem Fall nicht viel ausmachen).
Ein kleiner Tip zusätzlich: $ENV{"TZ"} = "MET"; ist durchaus sinnvoll... :-)
Ciao,
Mirko