[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: (OT) Hilfe zu sed?



Hallo,

Am Fri, 01 Apr 2011, Jim Knuth schrieb:
>am 01.04.11 02:54 schrieb David Haller <lists@dhaller.de>:
>>Am Thu, 31 Mar 2011, Jim Knuth schrieb:
>>>am 31.03.11 21:59 schrieb Gerhard Schromm<gschromm-spam@arcor.de>:
>>[..]
>>>na ja, da sind schon noch`n paar Sachen drin, die da nicht rein sollen
>>>(ausser das /bin/false). Das ist die komplette passwd von Debian mit
>>>allen User (root, mysql, etc) Es müsste NUR die zeilen mit bspw.
>>>den Mailuser (web10p1) drinbleiben.
>>
>>Mit awk:
>>
>>awk 'BEGIN { FS = OFS = ":"; }
>>     $1 ~ /^web10p/ {
>>         $7 = ":userdb_mail=maildir:" $6 "/Maildir";
>>         print;
>>     }' EINGABE>  AUSGABE
[..]
>danke. Kann awk auch mit Wildcards arbeiten, so z.B.:
>
>$1 ~ /^web*p*/&&
>
>Also das Alles mit web7p1, web8p4 etc. beachtet wird

Warum Wildcards (Globs), wenn du Regex verwenden kannst?

awk 'BEGIN { FS = OFS = ":"; }
     $1 ~ /^web[0-9]+p[0-9]+$/ {
         $7 = ":userdb_mail=maildir:" $6 "/Maildir";
         print;
     }' EINGABE>  AUSGABE

Das sollte noch genauer deinem Bedarf entsprechen, das vor und nach
dem 'p' dürfen nur noch Ziffern (jew. mindestens eine) sein. Du
solltest dich mal mit Regexen beschäftigen, man 7 regex ist ein
Überblick, aber IIRC kein guter Einstieg. Mir fällt grad keine
"Anfänger" Doku ein ... Ah, doch:
http://selflinux.org/selflinux/html/regex.html ist auf Deutsch und mit
vielen Beispielen.

HTH,
-dnh

-- 
just had a great phone call from a user
Her : How is it you always maintain a sense of humour?
Me  : Because I'm completely insane.
Her : ...yyyyyes. Yes, that would explain it. Bye!            -- Jim


Reply to: