Raketenwilli: 2000 Zeilen wieder zusammen fügen - sed hilft

Beitrag lesen

Hallo,

Holla!

Alles klappt bestens. nur muß ich so nach und nach vermutlich über 2000 Zeilen wieder zusammen fügen.

Effel

Das manuell zu machen will man gerne meiden. Unter Linux würde ich folgendes versuchen: (Für html-Dateien)

sed -i.sed-backup -E ':a;N;$!ba;s/\n\t+([^<])/ \1/g' test.txt 

Mit Windows-Zeilenumbrüchen (\r\n):

sed -i.sed-backup -E ':a;N;$!ba;s/\r\n\t+([^<])/ \1/g' test.txt 

Dieses sucht einen Zeilenumbruch, gefolgt von mindestens einem Tabulator und einem Zeichen, welches kein '<' ist und ersetzt den Fund durch ein Leerzeichen und eben jenes gefundene Zeichen.

Möglicherweise musst Du den Tabulator anpassen:

Fügt Dein Editor 8 Leerzeichen statt eines Tabulators ein, dann sähe das so aus:

sed -i.sed-backup -E ':a;N;$!ba;s/\n(        )+([^<])/ \2/g' test.txt

Mit Windows-Zeilenumbrüchen (\r\n):

sed -i.sed-backup -E ':a;N;$!ba;s/\r\n(        )+([^<])/ \2/g' test.txt

Da ich nicht weiß, was Dein Programm erzeugt und ob es überhaupt einrückt, hier der Hinweis, dass die Codeschnipsel womöglich Anpassungen benötigen…

Falls was schief geht steht danach in [DATEINAME].sed-backup der alte Inhalt.

sed für Windows:

https://gnuwin32.sourceforge.net/packages/sed.htm