Hallo, hier - es erhebt weder Anspruch auf Vollständigkeit, noch auf Eleganz oder Schönheit. Wenn's nur darum geht, das ganze 1x zu machen, denke ich, ist das ausreichend. Es setzt zwei Files voraus: "a" und "b", das sind die beiden von Dir bezeichneten Dateien. Das Resultat geht auf die Standardausgabe. Vielleicht funktioniert es, ich hatte ja jetzt nur Deinen einen Datensatz zum spielen. #! /usr/bin/perl use strict; use warnings; use Fatal qw(open); my $a; # File "a" komplett in $a einlesen open(X, "a"); { local $/ = undef; $a = <X> } # nun durch "b" durchlaufen und jede # id hernehmen und in $a ersetzen open(X, "b"); while (<X>) { chomp; my ($t, $i) = /^((?:.*?\|){3})\s*(.*)/; $a =~ s/^>\Q$i\E.*/$t/g; } # raus damit print $a; Best regards from Dresden Viele Grüße aus Dresden Heiko Schlittermann -- SCHLITTERMANN.de ---------------------------- internet & unix support - Heiko Schlittermann HS12-RIPE ----------------------------------------- gnupg encrypted messages are welcome - key ID: 48D0359B --------------- gnupg fingerprint: 3061 CFBF 2D88 F034 E8D2 7E92 EE4E AC98 48D0 359B -
Attachment:
signature.asc
Description: Digital signature