open (DATEI, $datei); /-> öffne Datei
open DATEI, $datei || die "Kann $datei nicht zum lesen öffnen, weil: $!";
open DATEI, '<' , $datei or die ".....";
perldoc perlop (!), deine Variante ist tasächlich fehlerhaft.
'<' ist optional und wenn schon dann so "<$datei"
aber mit dem or operator hast du recht, bzw. meine Version müßte so aussehen:
open (DATEI, $datei) || die ....
Struppi.