%naccess = map { /^\s+\S+\s+\S+\s+(\S+)/; ($1 => $_) } ; close (IN2); while () { chomp; /^\s+(\S+)/; print OUT ($naccess{$1}) if (exists($naccess{$1})); }