Wie nutze ich locate in cygwin?

7732
Phenom

Ich versuche, locateDateien zu finden, aber ich bekomme nichts vom Programm zurück. Es kann nicht einmal Dateien finden, die sich im aktuellen Verzeichnis befinden. Wie mache ich locateArbeit?

14
Verwenden Sie sudo updatedb? ukanth vor 14 Jahren 0

3 Antworten auf die Frage

15
dirkjot

Im Wesentlichen müssen Sie updateb zuerst ausführen, da hierdurch die Datenbank aufgebaut wird, die locate verwendet.
Machen Sie einfach updateb --localpaths = c: / als erste Lösung.

In diesem Blogeintrag finden Sie eine Reihe guter Tipps, einschließlich der Einrichtung von updateb über cygwin cron: http://www.weiqigao.com/blog/2006/08/14/ten_steps_to_higher_cygwin_productivity.html

Google "cygwin updatedb" für einen relevanten Beitrag, wenn Sie Probleme mit Pfaden haben, die Leerzeichen enthalten. Ich bekomme unter WinXP Pro keine Probleme (außer der Erlaubnis verweigert), aber andere Plattformen können dies erfordern.

Der Blogpost hat eine neue Adresse, http://webpages.charter.net/weiqigao/2006/08/14/ten_steps_to_higher_cygwin_productivity.html Stefan Rasmusson vor 11 Jahren 5
Ich habe festgestellt, dass ein einfacher Aufruf von Updatedb in Cygwin nicht funktioniert, da die Standardoptionen (oder --localpaths = c: /) dazu führen, dass folgende Links in Endlosschleifen geführt werden. Ich denke, das liegt daran, dass bestimmte Arten von Windows 7-Links nicht als symbolische Links zu Cygwin angezeigt werden, sodass sie nicht übersprungen werden können (da das standardmäßige -follow-Verhalten entgegengesetzt intuitiv ist). Phil Goetz vor 7 Jahren 0
5
Mark Byers

Um zu verwenden locate, müssen Sie updatedbzuerst laufen .

0
Ex Umbris

Ich denke, der Befehl, den Sie wollen, ist find

Machen Sie sich man findmit der Syntax und den Optionen vertraut

Der locate-Befehl wird für eine vordefinierte Datenbank mit Dateinamen ausgeführt

Ja, locate führt eine vordefinierte Datenbank aus. Warum will das OP stattdessen finden? CarlF vor 14 Jahren 0
Find erledigt zumindest die angeforderte Aufgabe, wenn locate nicht vorhanden ist oder aus irgendeinem Grund nicht funktioniert. Langsamer, da nicht die vorbereiteten Daten zum Suchen vorhanden sind, aber es funktioniert, und die Ergebnisse werden mit größerer Wahrscheinlichkeit auf den neuesten Stand gebracht und sind vollständig (updateb wurde möglicherweise so konfiguriert, dass einige Teile des Dateisystems ausgeschlossen werden). David Spillett vor 14 Jahren 1