DieterH
05-09-2011, 20:45
Hallo,
es gibt die Möglichkeit, alle Zeilen einer Textdatei mit Hilfe von SED umzuordnen ("Gegenrichtung"), z.B. durch das Konstrukt: sed -n '1!G;h;$p'
Obiger sed-Befehl vertauscht die Reihenfolge ALLER Zeilen, gibt den Inhalt der Eingabedatei "von hinten beginnend" aus.
Ich habe Hunderte von Textdateien, die jeweils in drei Blöcke strukturiert werden können: A, B und C. Die Zeilen der Blöcke A und C sollen unverändert bleiben; lediglich die Zeilen des Blocks B sollen in Gegenrichtung vertauscht werden (umgekehrte Reihenfolge). Die Zeilen von Block B beginnen jeweils mit "%BB". Es ist sichergestellt, dass die Zeilen der Blöcke A und C nicht mit dieser Zeichenkette beginnen.
Wer kann obige sed-Anweisung umformatieren, so dass sie nur auf die Zeilen des Blocks BB wirkt, die Reihenfolge der Blöcke A und C aber NICHT ändert?
Vielen Dank voraus.
Gruß
Dieter
es gibt die Möglichkeit, alle Zeilen einer Textdatei mit Hilfe von SED umzuordnen ("Gegenrichtung"), z.B. durch das Konstrukt: sed -n '1!G;h;$p'
Obiger sed-Befehl vertauscht die Reihenfolge ALLER Zeilen, gibt den Inhalt der Eingabedatei "von hinten beginnend" aus.
Ich habe Hunderte von Textdateien, die jeweils in drei Blöcke strukturiert werden können: A, B und C. Die Zeilen der Blöcke A und C sollen unverändert bleiben; lediglich die Zeilen des Blocks B sollen in Gegenrichtung vertauscht werden (umgekehrte Reihenfolge). Die Zeilen von Block B beginnen jeweils mit "%BB". Es ist sichergestellt, dass die Zeilen der Blöcke A und C nicht mit dieser Zeichenkette beginnen.
Wer kann obige sed-Anweisung umformatieren, so dass sie nur auf die Zeilen des Blocks BB wirkt, die Reihenfolge der Blöcke A und C aber NICHT ändert?
Vielen Dank voraus.
Gruß
Dieter