Ightorn
Köszönöm, a bábel érdekes lehet, és már ez a szkript is valami. 😀
Az éjjel megírtam egyébként Pascal-ban.
program project1;
uses baseunix, classes, unix, sysutils, strutils;
var
outfile, infile: textfile;
currentline:string;
prevdifftime,difftime,time1,time2,correction:TDatetime;
timepos:integer;
datum,ido:string;
begin
Assign (infile,paramstr(1));
Assign (outfile, paramstr(2));
Rewrite(outfile);
Reset(infile);
settextlineending(infile,#10);
Rewrite(outfile);
DateSeparator := '-';
LongDateFormat := 'yyyy-mm-dd';
time1:=0;
time2:=0;
correction:=0;
prevdifftime:=0;
while not eof(infile) do
begin
readln(infile,currentline);
timepos:=pos( '<time>',currentline);
if timepos > 0 then begin
//a sor időbélyeg
//<time>2021-09-09T08:52:47.983+02:00</time>
datum:=copy(currentline,timepos+6,10);
ido:=copy(currentline,timepos+17,8);
time1:=strtodatetime(datum+' '+ido);
time1:=time1-correction;
if time2=0 then time2:=time1;
difftime:=time1-time2;
if difftime > 4 then
begin
//4 napnál nagyobb az ugrás
correction:=time1-time2-prevdifftime;
end else prevdifftime:=difftime;
datum:=Formatdatetime('yyyy-mm-dd"T"hh:mm:ss"+02:00"',time1);
currentline:='<time>'+datum+'</time>';
time2:=time1;
end;
writeln(outfile,currentline);
end;
Close(infile);
Close(outfile);
end.
Szerk: azért még tesztelem....