Stefan Bion: Was heißt "Premature end of script headers" ?!

Beitrag lesen

Hi,

Dumme Frage: Falls der Server unter UNIX läuft und Du das Script von einer NT-Kiste per FTP hochgeladen hast: Hattest Du den ASCII-Modus eingeschaltet?

gelegentlich, wenn ich ein script von windows nach linux rüberkopiere habe ich hinter jeder zeile ein dummes leerzeichen das aber anscheinend kein leerzeichen ist...
der midnight commander zeigt das soweit ich weiß als \M oder so ähnlich an.

Genau, das ist wahrscheinlich ein "Carrige-Return" (CR) (dezimal 13). Unter Unix gibt's nur Linefeed (LF) (dezimal 10) als Zeile-Ende-Zeichen, unter Windoze/DOS dagegen CR+LF.

auf jeden fall läuft mein script dann erst, wenn ich dieses zeichen mindestens aus der #!/usr/bin/perl zeile entfernt habe..

Ja, in diesem Fall hast Du wahrscheinlich vergessen, die Datei im ASCII-Modus zu übertragen.

Gruß,
Stefan