Re: find Befehl um Inhalt von Datei zu suchen
Hallo,
* On Mon, Feb 02, 2009 at 04:30:29PM +0100 Heiko Schlittermann wrote:
> Doch, will man formal korrekt handeln, muß(!) das maskiert sein. Sicher
> wird im o.a. Fall das als --include=*.pdf auch meistens durchgehen.
>
> 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. Blöd ist,
> daß man diesen Fehler sehr selten findet, weil es kein Fehler aus Sicht
> der Shell oder von Grep ist, die lassen das einfach durchgehen, weil sie
> hier gewollt und nicht-gewollt nicht unterscheiden können.
Zumindest den Fall, dass zwei *.pdf im aktuellen Verzeichnis existieren
wird man zumeist recht schnell herausbekommen, weil dann mit relativ
großer Wahrscheinlichkeit eine Fehlermeldung kommt, falls der Befehl nur
einen Parameter annimmt:
$ touch a.pdf
$ touch b.pdf
$ find . -name \*.pdf
./a.pdf
./b.pdf
$ find . -name *.pdf
find: paths must precede expression: b.pdf
Usage: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]
Gruß,
Spiro.
--
Spiro R. Trikaliotis http://opencbm.sf.net/
http://www.trikaliotis.net/ http://www.viceteam.org/
Reply to: