sed -> Zeile 8 vor Zeile 5 einfügen

Diskutiere sed -> Zeile 8 vor Zeile 5 einfügen im Ruby, php, Perl, Python ... Forum im Bereich Programmieren unter Linux/Unix; Hallo zusammen, wie kann ich die Zeile 8 vor die Zeile 5 einfügen? Vielen Dank im Voraus. Gruß Markus

  1. #1 Markus371, 11.08.2010
    Markus371

    Markus371 Grünschnabel

    Dabei seit:
    09.09.2009
    Beiträge:
    7
    Zustimmungen:
    0
    Hallo zusammen,

    wie kann ich die Zeile 8 vor die Zeile 5 einfügen?
    Vielen Dank im Voraus.

    Gruß
    Markus
     
  2. #2 floyd62, 11.08.2010
    floyd62

    floyd62 Routinier

    Dabei seit:
    01.05.2007
    Beiträge:
    322
    Zustimmungen:
    0
    Witzig ... verschieben oder kopieren? Verschieben könnte etwa so funktionieren:
    Code:
    sed -e '5{h;d}' -e '6,7{H;d}' -e '8G'
    
    :) Grüsse, A.
     
  3. #3 Markus371, 12.08.2010
    Markus371

    Markus371 Grünschnabel

    Dabei seit:
    09.09.2009
    Beiträge:
    7
    Zustimmungen:
    0
    Hallo floyd62,

    Super, läuft. Vielen Dank.
    Kann man das ganze auch umdrehen? z.B. Zeile 2 vor Zeile 14

    Gruß
    Markus
     
  4. #4 floyd62, 12.08.2010
    floyd62

    floyd62 Routinier

    Dabei seit:
    01.05.2007
    Beiträge:
    322
    Zustimmungen:
    0
    Du musst dir eigentlich nur bewusst machen, dass sed nicht rückwärts gehen kann, sondern den Input einfach zeilenweise abarbeitet. Da heisst, du solltest erst einmal deine Aufgabenstellung entsprechend umformulieren.

    "Zeile 2 vor Zeile 14 zu verschieben" heisst also erst einmal, Zeile 2 in den Hold Space zu kopieren und zu löschen ('2{h;d}'), und diesen Hold Space dann an Zeile 13 anzuhängen ('13G').

    ... sollte also so funktionieren:
    Code:
    seq 1 20 | sed -e '2{h;d}' -e '13G'
    
    A.
     
  5. #5 Markus371, 16.08.2010
    Markus371

    Markus371 Grünschnabel

    Dabei seit:
    09.09.2009
    Beiträge:
    7
    Zustimmungen:
    0
    Hallo floyd62,

    Vielen Dank. Genau so habe ich es mir vorgestellt.

    Gruß
    Markus
     
Thema: sed -> Zeile 8 vor Zeile 5 einfügen
Besucher kamen mit folgenden Suchen
  1. linux zeile verschieben

    ,
  2. mit sed die erste spalte anzeigen

    ,
  3. zeilen verschieben linux

    ,
  4. linux sed zeilen kopieren
Die Seite wird geladen...

sed -> Zeile 8 vor Zeile 5 einfügen - Ähnliche Themen

  1. SED: eine Zeile mit einem Grep-Output ersetzen

    SED: eine Zeile mit einem Grep-Output ersetzen: Hallo Leute, ich bin kurz vor dem Ziel stecken geblieben. Wie im Titel geschrieben möchte ich in einer Datei eine bestimmte Zeile #18 mit dem...
  2. Unix: Zeile aus ManSeite kopieren

    Unix: Zeile aus ManSeite kopieren: Hallo, wenn ich bei Unix die ManSeite aufrufen will, tue ich das mit man -ls. Jetzt will ich bestimmte Sätze (alle Sätze die mit "." enden) aus...
  3. Zeilen behalten, die Werte in einem bestimmten Bereich enthalten

    Zeilen behalten, die Werte in einem bestimmten Bereich enthalten: Hallo, ich habe eine Datei mit 4 Spalten, in denen Zahlenwert liegen. Ich möchte gerne alle Zeilen behalten, bei denen der Wert in der dritten...
  4. Zeilen aus Txt-Datei entfernen, wenn eine Spalte einen bestimmten Wert enthält

    Zeilen aus Txt-Datei entfernen, wenn eine Spalte einen bestimmten Wert enthält: Hallo, ich habe folgendes Problem. Ich erstelle mit Hilfe einer Shell eine Liste, die vier Spalten mit Zahlenwerten enthält. Wenn die letzte...
  5. Zeilen aus Textdatei löschen die $Var1 enthalten und nicht $Var2

    Zeilen aus Textdatei löschen die $Var1 enthalten und nicht $Var2: Ich habe folgendes Problem: Ich will aus einem Textfile Zeilen entfernen: - die $Variable1 enthalten - aber nicht wenn sie $Variable2 (oder...
  1. Diese Seite verwendet Cookies um Inhalte zu personalisieren. Außerdem werden auch Cookies von Diensten Dritter gesetzt. Mit dem weiteren Aufenthalt akzeptierst du diesen Einsatz von Cookies.
    Information ausblenden