Re: find -E ... mal wieder

From: Oliver Fromme <olli(at)lurza.secnetix.de>
Date: Mon, 15 Nov 2010 09:21:26 +0100 (CET)

Timm Wimmers wrote:
> Am 11.11.2010 15:23, schrieb Oliver Fromme:
> > Timm Wimmers <timm(at)ticore.de> wrote:
> > > ich versuche in einem Verzeichnisbaum Dateien zu finden, die mit "._"
> > > beginnen und mit ".xls" enden. Mein Kommando sieht derzeit so aus:
> >
> > $ find /wo/auch/immer -name "._*.xls"
>
> Also kann ich als Lernergebnis für mich festhalten, dass bei dem primary
> -regex oder -iregex, der Matchversuch _nicht_ auf den Namen der Datei
> durchgeführt wird, sondern auf den _gesamten_ Verzeichniseintrag
> inklusive Pfadangaben?

Ja, zumindest bei FreeBSD. -regex und -iregex sind kein
Standard. Die FreeBSD-Manpage ist da eigentlich recht
eindeutig: »True if the whole path of the file matches«

Grundsätzlich würde ich empfehlen, -name zu benutzen,
wenn es irgendwie möglich ist. Es bezieht sich nur auf
den Namen der Datei (wie in diesem Fall gewünscht), und
es verwendet das normale "Globbing" mit »*«, »?« und
»[]«, wie man es von der Shell kennt, was in diesem Fall
auch vollkommen genügt. Und es ist standardisiert, d.h.
man kann erwarten, dass es auf jeder POSIX-Plattform
auf die gleiche Weise funktioniert.

Selbst wenn Globbing nicht genügt und man einen regulären
Ausdruck benötigt, neige ich dazu, *nicht* -regex zu ver-
wenden, sondern stattdessen ein »... | grep ...« nachzu-
schieben. Das ist portabler, flexibler, und man weiß
ganz genau, worauf sich der reguläre Ausdruck bezieht.
Da man das grep-Kommando sowieso öfters verwendet, muss
man da normalerweise nichts in der Manpage nachschlagen.

Gruß
   Olli

-- 
Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing b. M.
Handelsregister: Registergericht Muenchen, HRA 74606,  Geschäftsfuehrung:
secnetix Verwaltungsgesellsch. mbH, Handelsregister: Registergericht Mün-
chen, HRB 125758,  Geschäftsführer: Maik Bachmann, Olaf Erb, Ralf Gebhart
FreeBSD-Dienstleistungen, -Produkte und mehr:  http://www.secnetix.de/bsd
"anyone new to programming should be kept as far from C++ as
possible;  actually showing the stuff should be considered a
criminal offence" -- Jacek Generowicz
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Mon 15 Nov 2010 - 09:21:47 CET

search this site