Am Sonntag, 13. Februar 2005 10:27 schrieb Matthias Houdek:
Am Sonntag, 13. Februar 2005 01:52 schrieb David Haller:
[...] var="$var1. $var1:$var2. $var2;$var3." echo "$var" | sed 's/[ :;]//g;$s/\.$//'
Oh, wieder was dazugelernt.
Ein $ unmittelbar vor dem s bezieht den Befehl also nur auf die letzte Zeile. Ich kannte die Adressierung immer nur durch direkte Angabe der Zeilennummern. Wäre ja auch möglich, fällt mir gerade auf. Man könnte die Zeilen ja vorher mit wc zählen. (Warum einfach, wenn ... ;-)
*nachschau* Hm, man sollte vielleicht doch lieber mehr die englischen Manpages lesen. Da steht es schön übersichtlich. In der deutschen steht es im Text versteckt :-(
Auszug aus man sed: 0,addr2 Start out in "matched first address" state, until addr2 is found. This is similar to 1,addr2, except that if addr2 matches the very first line of input the 0,addr2 form will be at the end of its range, whereas the 1,addr2 form will still be at the beginning of its range. Was ist die "very first line"? Oder soll dieses Konstrukt einfach nur den Fehler verhindern, der auftreten bei "1,addr2" auftreten wurde, wenn der eventuellen Ausdruck für Adresse 2 gleich Null ergibt? -- Gruß MaxX Hinweis 1: PMs an diese Adresse werden automatisch vernichtet. Hinweis 2: Bitte unbedingt beachten: http://www.suse-etikette.de.vu