Siechfred: Probleme mit filesize > 1 GB???

Beitrag lesen

Hell-O!

Das erwähnte erste Skript erzeugt eine 1,2 GB große Ausgabedatei quasi ohne Punkt und Komma – sprich Zeilenumbrüche. Nun kommt dieses Monster auf das zweite (obige) Perlscript zu.

Also wird es beim Einlesen als *eine* Zeile behandelt, sofern du $/ nicht modifiziert hast. Starker Tobak für das arme System :-)

print STDERR tell(DATEI)."\n";
1205690315

Du befindest dich am Ende der Datei, bereits beim ersten Lesevorgang, was meine obige Vermutung stützt. Vielleicht solltest du die Datei besser zeichen- bzw. blockweise einlesen, siehe hierzu getc und Term::ReadKey.

Dein Substitution Loop könnte hierin begründet sein:

$_ =~ s/\x5B\x50\x5B\xff\x02/\x0A/g;  
$_ =~ s/\x5B\x50\x5B\xff\x03/\x0D/g;  
$_ =~ s/\x5B\x50\x5B\xff\x04/\x20/g;  
$_ =~ s/\x5B\x50\x5B\xff\x05/\x19/g;

da du in der ersten Zeile bereits alles ersetzt hast, was in den nächsten drei Zeilen gesucht ist. Auch ein chomp $_; vor der Ersetzung könnte eventuell helfen.

Sind alles nur Vermutungen, vielleicht hilft's dir ja weiter.

Siechfred

--
Hier könnte Ihre Werbung stehen.
Viel Lärm um nichts || Steuerliche Einordnung des Rangrücktritts