SED -n -e '/o/,/a/p' data.txt

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von art, 03.07.2007.

  1. art

    art Jungspund

    Dabei seit:
    22.06.2007
    Beiträge:
    14
    Zustimmungen:
    0
    data.txt :
    1 kirk
    2 worf
    3 spock
    4 data
    5 odo
    6 kira
    7 enterprise
    8 chekov
    9 riker
    10 sulu
    ------ EOF----------

    SED -n -e '/o/, /a/p' data.txt

    Eigentlich sollte es von der 1.Zeile mit 'o' bis 1.Zeile mit 'a' ausgeben.
    Also :
    2 worf
    3 spock
    4 data

    Aber die Ausgabe ist :
    2 worf
    3 spock
    4 data
    5 odo
    6 kira
    8 chekov
    9 riker
    10 sulu

    Wieso? ?(
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 Wolfgang, 04.07.2007
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Weil nach dem a von 4 data ein o kommt und kein weiteres a!
    sed sucht nach allen Bereichen die matchen. Ist keine Endbedingung vorhanden, dann halt alles bis zum Ende.

    Wenn du das anders willst:
    Code:
    $ sed -ne '/o/,/a/p;/a/q' test
    2 worf
    3 spock
    4 data
    

    Gruß Wolfgang
     
Thema:

SED -n -e '/o/,/a/p' data.txt