use Inline::Files; $v = 'r13'; %b = map {chomp; $_ => undef} <FILEB>; while (<FILEA>){ @t = split /[\s|\"]/; push @a, $t[2] if ! exists $h{$t[2]}; $h{$t[2]}{$t[6]} = $t[0]; } foreach (@a){ exists $b{$v} ? ($h{$_}{$v} = "test") : ($h{$_}{$v} = "skip"); foreach $key (sort keys $h{$_}){ $key ne '' ? print "$h{$_}{$key} $_ version $key\n" : print "$h{$_}{$key} $_\n"; } } __FILEA__ test "r5" test "r1" test "r1" version "10" test "r1" version "11" test "r1" version "12" skip "r1" version "15" test "r4" test "r4" version "10" skip "r4" version "11" test "r3" skip "r3" version "11" test "r10" skip "r10" version "11" __FILEB__ r1 r10 r5 r13
In reply to Re: Insert lines in a file
by Lennotoecom
in thread Insert lines in a file
by PetreAdi
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |