So finden Sie Dateien mit Cygwin

0

Wir durchsuchen mit cygwin gerne viele Verzeichnisse in einer Windows-Umgebung. Wir haben versucht zu finden. -name * .txt -print

aber es beschwert sich das Prädikat -print. Was ist dann der richtige Befehl?

Wir möchten nur passende Dateien auf die Konsole drucken.

Vielen Dank an alle

chz
quelle

Antworten:

3

Es beklagt sich, weil Sie das nicht zitiert haben, *.txtso dass die Shell das Muster erweitert, anstatt es an zu übergeben find. Mit anderen Worten, nehmen wir an, Sie befinden sich in einem Verzeichnis, das die folgenden Dateien enthält:

 foo.txt bar.txt baz.txt

Wenn Sie sagen, find . -name *txt -printder Platzhalter ( *) wird durch die Shell erweitert (Bash wahrscheinlich), dann ist das, was an f übergeben findwird, tatsächlich:

find . -name foo.txt bar.txt baz.txt -print

Das sind zu viele Argumente und findKlagen. Um das zu bekommen, wonach Sie suchen, müssen Sie das Muster angeben, nach dem Sie suchen (das -printfür das, was Sie tun, brauchen Sie auch nicht ):

 find . -name "*txt"
terdon
quelle