Hi!
Nur der Vollstaendigkeit halber:
ein chomp ist hier nicht noetig, weil der Zeilenende-Anker $, (u.a.) in Perl, auf das Ende des gesamten Strings, sowie vor einem Newline am Ende des Strings passt - und zweiteres ist ja hier der Fall.
Nein, das gilt nur, wenn der Modifier m angegeben wird, also
print OUT unless /^$/m;
Ohne diesen matcht ein ^ wirklich nur den Anfang des Strings (nicht den einer Zeile innerhalb des Strings) und $ nur das Ende des Strings. Siehe perldoc perlre -> Abschnitt Description.
So long