Re: find Befehl um Inhalt von Datei zu suchen
* Heiko Schlittermann <hs@schlittermann.de> wrote:
> Peter Wiersig <peter@friesenpeter.de> (Mo 02 Feb 2009 16:17:54 CET):
> > On Mon, Feb 02, 2009 at 10:34:33AM +0100, Ansgar Esztermann wrote:
> > >
> > > On Jan 28, 2009, at 14:36 , Jens Schüßler wrote:
> > >
> > >>
> > >> grep -r [muster] --include=*.pdf
> > >
> > > Täusche ich mich, oder müßte man den * maskieren, damit er nicht von der
> > > Shell ausgewertet wird?
> >
> > Nicht wenn Option und Parameter durch das = getrennt werden.
> >
> > s. "echo --test=*" und "echo --test *"
>
> Doch, will man formal korrekt handeln, muß(!) das maskiert sein. Sicher
> wird im o.a. Fall das als --include=*.pdf auch meistens durchgehen.
Da hast du schon recht, hatte ich nicht bedacht. Steht auch in der
Manpage
,----
| --exclude=GLOB
| Skip files whose base name matches GLOB (using
| wildcard matching). A file-name glob can use *, ?, and [...] as
| wildcards, and \ to quote a wildcard or backslash character literally.
`----
>
> Problematisch wird es, wenn Du im Arbeitsverzeichnis eine Datei hast, die zufällig
> "--include=abc.pdf" heißt. Dann wird grep genau nur noch rekursiv nach
> "abc.pdf" suchen, was meistens nicht das ist, was Du willst.
Nur Murphy nennt seine Dateien so abartig.;-)
Aber die Diskussion ist sowieso sehr akademisch, weil grep ja überhaupt keine
pdf-Dateien durchsuchen kann wie ich jetzt festgestellt habe.
Gruß
Jens
Reply to: