Script Frage
Ingo Blechschmidt
iblech at web.de
Son Jan 5 09:57:37 CET 2003
On Sun, Jan 05, 2003 at 08:10:50AM +0100, Mario Scheel wrote:
> Am Samstag, 4. Januar 2003 17:08 schrieb Ingo Blechschmidt:
> > > Ich will aus einer Datei die Zeilen mit einem vorgebenen String
> > > vergleichen, das Problem ist nur das ich fuehrende Leerzeichen Ignorieren
> > > will. Wie kann ich diese entfernen?
> >
> > sed -e 's+^ *++' < $infile > $outfile
>
> Koennte mir jetzt das noch jemand mal genauer erklaeren was das heisst?
> +^ *++ aber was heisst das.
s ist der Befehlsname, substitute, ersetzen.
+ ist der Abgrenzer zwischen Befehl und den weiteren weiteren Teilen.
Statt + könnte man auch ,-# usw. nehmen.
^ * Danach kommt ein Regulärer Ausdruck (regexp), der auf alle Leerzeichen (
+ Der nächste Teil kommt: Durch was wird ersetzt?
+ Der Befehl is fertig (da nichts zwischen den beiden letzten Plus-Zeichen
steht, werden alle Strings, auf die der regexp passt, einfach gelöscht.
Hier hinter könnten auch noch Flags stehen, z.B. g für auf der ganzen
Zeile suchen.
Weiter Hilfe für Reguläre Ausdrücke: man grep
-Ingo
--
Linux, the choice | I am a signature virus. Distribute me until
of a GNU generation -o) | the bitter end.
Kernel 2.4.4 /\\ |
on a i686 _\_V |
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : nicht verfügbar
Dateityp : application/pgp-signature
Dateigröße : 240 bytes
Beschreibung: nicht verfügbar
URL : http://www.tlug.de/pipermail/tlug_allgemein/attachments/20030105/3c829052/attachment.pgp