Leerzeilen aus Dateien entfernen



  • Hallo NG,

    ich habe einige Textdateien mit mehreren 100.000 Zeilen, die in jeder zweiten Zeile eine Leerzeile enthalten. Um diese zu entfernen hab ich folgende zwei Kommandos probiert.

    cat test.log | perl -pi -e "s/^\r?\n//" > neu.log
    sed -e '/^[ ]*$/d' test.log > neu.log

    Aber beide funktionieren nicht. Wenn ich mit das File mit less ansehe, zeigt mir der Editor

    ^M

    an jeden Zeilenanfang an, aber keine Leerzeilen. Wenn ich einen grafischen Editor wie gedit nehme, ist jede zweite Zeile eine Leerzeile. Wie entferne ich also das "^M" am Anfang einer Zeile.

    Grüße und Danke schonmal,
    M. Incani



  • Hallo BlackPepper,

    ich habe mir deine beiden Befehle nicht angesehen.
    Es hat aber den Anschein, dass deine Dateien aus der
    Windowswelt stammen. Dort wird am Zeilen Ende noch ein
    zu Linux zusätzliches Zeichen eingefügt.

    Es gibt da ein Programm: dos2unix welches aus Textdateien
    genau dieses Zeichen am Ende einer Zeile entfernt.

    Benutz dieses Mal bevor du eine deiner beiden Zeilen
    ausprobierst.

    Gruß mcr


Anmelden zum Antworten