Re: Conf Datei einlesen und ausgeben
Hallo,
Am Sam, 25 Nov 2006, Peter Velan schrieb:
>am 2006-11-25 09:29 schrieb Ulrich Fürst:
[..]
>>> Ist beim egrep "[:space:]" identisch mit dem pcre "\s"?
>>
>> Liest sich in der man-page so
Ja.
>So richtig explizit steht in meiner man-page nicht, dass [:space:] für
>whitespace steht, allerdings stellt sich mir die Frage, wozu eine
>Zeichenklasse [:space:] definieren, wenn sich dahinter nur ein einzelner
>'Blank' verbergen sollte.
Nein. Das kann auch ein Tab oder Newline sein. Siehe man 7 regex.
>> funktioniert aber (so?) nicht:
>>
>> $ egrep -v "^[:space:]*#|^[:space]*$" /etc/exim4/exim4.conf.template
>
>Was ich aber nun gar nicht verstehe:
>
>$ egrep -v "^[:space:]*#|^[:space:]*$" /etc/samba/smb.conf
>
>liefert ungerührt:
>
> # NETWORKING
>^
>+----- hier steht in smb.conf ein einziger "Blank" (= HEX-20)
>
>Das hätte doch die Regex "^[:space:]*#" wegputzen müssen!?
Nein. Das sind POSIX-Zeichenklassen, die gelten innerhalb von [].
==== man 7 regex ====
Within a bracket expression, the name of a character class
^^^^^^^^^^^^^^^^^^^^^^^^^^^
enclosed in `[:' and `:]' stands for the list of all char
acters belonging to that class.
====
Also:
egrep -v "^[[:space:]]*#|^[[:space:]]*$" /etc/samba/smb.conf
-dnh
--
Die drei Todfeinde des Programmieres:
Sonnenlicht, frische Luft und das unerträgliche Gebrüll der Vögel.
Reply to: