Frage Locate Name funktioniert nicht


Es gibt eine Datei bei /user/share/jogl.jar.

ich benutze locate jogl.jar

aber es funktioniert nicht. Warum?


0
2017-07-17 13:33


Ursprung




Antworten:


Von der man-Seite:

   locate  reads  one or more databases prepared by updatedb(8) and writes
   file names matching at least one of the PATTERNs  to  standard  output,
   one per line.

Lauf updatedb als root und versuche es erneut. Es sollte funktionieren.

Alternativ können Sie verwenden find oder find | grep, die keine db verwendet (und ist daher erheblich langsamer).


4
2017-07-17 13:41





Was meinst du mit "es funktioniert nicht"? Zwei Hauptprobleme kommen Ihnen in den Sinn, wenn Sie nicht damit vertraut sind locate, beide im Zusammenhang mit der Tatsache, dass locate stützt sich auf eine Datenbank und nicht direkt auf dem Dateisystem.

  1. Es zeigt kein Ergebnis an: In diesem Fall müssen Sie möglicherweise aktualisiert werden locatedie Datenbank durch einfaches Ausführen updatedb von einem Terminal

  2. Es gibt viel zu viele Ergebnisse zurück: Noch einmal, locate verwendet eine Datenbank, nicht das aktuelle Verzeichnis (im Gegensatz zu mehreren anderen gängigen Unix-Befehle), also wenn Sie versuchen, zu lokalisieren somestuff von deiner home Verzeichnis, um alle zu finden somestuff das es enthalten könnte, wird es nicht funktionieren. Sie müssen es stattdessen mit dem vollständigen Pfad ausführen: locate ~/*somestuff


0
2017-07-17 13:58