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. Anzeige

    Anzeige

    Wenn du mehr über Linux erfahren möchtest, dann solltest du dir mal folgende Shellkommandos anschauen.


    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 floyd62, 11.08.2010
    floyd62

    floyd62 Routinier

    Dabei seit:
    01.05.2007
    Beiträge:
    323
    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.
     
  4. #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
     
  5. #4 floyd62, 12.08.2010
    floyd62

    floyd62 Routinier

    Dabei seit:
    01.05.2007
    Beiträge:
    323
    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.
     
  6. #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. perl: Zusammenführen von Zeilen, die mit Leerzeichen beginnen.

    perl: Zusammenführen von Zeilen, die mit Leerzeichen beginnen.: Hallo, Hintergrund: Das LDIF-Format trennt Zeilen, die größer als 80 Zeichen sind und schreibt in die nächste Zeile ein Leerzeichen. Beispiel:...
  2. Zeilen-übergreifend zwischen {....} filtern

    Zeilen-übergreifend zwischen {....} filtern: Hallo in einer Datei können Flags vergeben werden. es können x-Flags vergeben werden die innerhalb von {zeile, zeile} stehen. Ich möchte eine...
  3. 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...
  4. 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...
  5. 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...
  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