Hi,
ich habe bei einem Script folgendes Problem.
Ich bekomme eine Textdatei von einem Windowssystem auf eine Solaris-Büchse.
Wenn ich die Datei mit dem vi anschaue, steht am Ende jeder Zeile ein ^M.
Das führt nun dazu, dass Perl bei einem chomp() dieses ^M nicht entfernt und somit einiges am weiteren Scriptverlauf schiefgeht.
Das einzige, was ich dazu gefunden habe, ist von das hier und dort steht: Genaugenommen entfernt chomp() am Ende eines Strings die Zeichenkette, die in der Variablen "$/" steht (Standardwert: "\n"). Ist "$/" leer, so werden alle Zeilenvorschübe abgeschnitten
Mir stellt sich jetzt die Frage, was genau ist $/. Eine Systemvariable, eine Variable von Perl oder was anderes. Eine Ausgabe von $/ liefert nix, also scheint es leer zu sein.
Alternativ meinte noch wer, dass es mit Perl eine Funktion gibt, um solche Windowszeichen korrekt zu verarbeiten. Aber dazu finde ich leider nichts.
anddie
ich habe bei einem Script folgendes Problem.
Ich bekomme eine Textdatei von einem Windowssystem auf eine Solaris-Büchse.
Wenn ich die Datei mit dem vi anschaue, steht am Ende jeder Zeile ein ^M.
Das führt nun dazu, dass Perl bei einem chomp() dieses ^M nicht entfernt und somit einiges am weiteren Scriptverlauf schiefgeht.
Das einzige, was ich dazu gefunden habe, ist von das hier und dort steht: Genaugenommen entfernt chomp() am Ende eines Strings die Zeichenkette, die in der Variablen "$/" steht (Standardwert: "\n"). Ist "$/" leer, so werden alle Zeilenvorschübe abgeschnitten
Mir stellt sich jetzt die Frage, was genau ist $/. Eine Systemvariable, eine Variable von Perl oder was anderes. Eine Ausgabe von $/ liefert nix, also scheint es leer zu sein.
Alternativ meinte noch wer, dass es mit Perl eine Funktion gibt, um solche Windowszeichen korrekt zu verarbeiten. Aber dazu finde ich leider nichts.
anddie