Sebastian Opitz <[EMAIL PROTECTED]> wrote: > Hallo zusammen, > ich habe eine kleine Frage zu den RegExs bzw. konkret zu sed: > Ich habe eine Datei mit folgendem Muster: > > xyz > inhalt > xyz > inhalt > xyz > inhalt > > Also ein immer wieder kehrendes Merkmal "xyz", dahinter jeweils > anderer Inhalt. Diese Datei wird immer aktualisiert und ich möchte mir > einen kleinen Befehl bauen, der mir nur den ersten Inhalt > wiedergibt. Also ein sed 's/xyz\(.*\)/\1/g', aber das nach dem ersten > mal aufhört.
$ cat testfile xyz Inhalt 1 xyz Inhalt 2 xyz Inhalt drei $ sed -ne '/xyz/ n;p;q' testfile Inhalt 1 $ sed -n bewirkt, dass nur ausgegeben wird, was explizit angefordert wird. /xyz/ ist die Adresse, die angesprungen wird, und ab der die folgenden Befehle ausgeführt werden: n => nächste Zeile in den pattern space p => Print (bzw. eher ausgeben) q => Sofort aufhören, ohne weiter zu arbeiten. Wenn Inhalt 1 mehr als eine Zeile haben kann, wird's komplizierter. Gruß, Frank -- Frank Küster Single Molecule Spectroscopy, Protein Folding @ Inst. f. Biochemie, Univ. Zürich Debian Developer (teTeX)

