Zum Inhalt springen

locate

Aus Foxwiki

Locate - sucht schnell nach Dateinamen

Beschreibung

locate basiert auf einem zuvor erstellten Index und ermöglichte eine schnelle Suche nach Dateinamen oder -pfaden

  • Diese wird regelmäßig aktualisiert, damit locate immer die korrekten Orte anzeigt, an denen sich die Dateien befinden und somit neue Dateien und Datenbewegungen erfasst werden
  • Nicht das Dateisystem wird durchsucht (wie bei find), sondern ein zuvor erstellter Index
Vorteil Schnelle Suchergebnisse
Nachteil Index nicht aktuell

Nicht alle Verzeichnisse werden durchsucht

  • /tmp, /var/spool, /media

Implementierungen

Paket Beschreibung
locate
slocate
mlocate
plocate

plocate

plocate findet alle Dateien auf dem System, die dem angegebenen Muster (oder allen Mustern, wenn mehrere angegeben sind) entsprechen

  • Dies geschieht mit Hilfe eines Index, der von updatedb(8) erstellt oder (seltener) von einem anderen Index durch plocate-build(8) konvertiert wurde
  • plocate ist weitgehend argumentkompatibel mit mlocate(1), ist aber deutlich schneller
  • Insbesondere muss es selten seine gesamte Datenbank durchsuchen, es sei denn, das Muster ist sehr kurz (weniger als drei Bytes) oder Sie wollen nach einem regulären Ausdruck suchen
  • Es versucht nicht, die Kompatibilität mit BSD-Locate oder Nicht-UTF-8-Dateinamen und -Locales zu erhalten
  • Die meisten E/A werden asynchron durchgeführt, aber die Ergebnisse werden synchronisiert, so dass die Ausgabe jedes Mal in der gleichen Reihenfolge erfolgt
  • Wenn mehrere Suchmuster angegeben werden, sucht plocate nach Dateien, die alle diese Muster erfüllen
  • Dies ist die Hauptinkompatibilität zu mlocate(1), das nach Dateien sucht, die auf ein oder mehrere Muster passen, es sei denn, die Option -A wird angegeben

Standardmäßig werden Muster als Teilstrings betrachtet, nach denen gesucht wird

  • Wenn mindestens ein nicht-ausgeschriebenes globbing-Metacharakter (*, ? oder []) angegeben wird, wird dieses Muster stattdessen als glob-Muster betrachtet (was bedeutet, dass es mit * beginnen und enden muss, damit eine Teilzeichenkette übereinstimmt)
  • Wenn --regexp angegeben wird, werden die Muster stattdessen als (nicht verankerte) POSIX-Basisausdrücke betrachtet, und wenn --regex angegeben wird, werden die Muster als erweiterte reguläre Ausdrücke von POSIX betrachtet
  • All dies entspricht dem Verhalten von mlocate(1)

Wie mlocate(1) zeigt plocate alle Dateien an, die für den aufrufenden Benutzer sichtbar sind (da er Lese- und Ausführungsrechte auf allen übergeordneten Verzeichnissen hat), und keine, die es nicht sind, indem es mit gesetztem setgid-Bit läuft, um auf den Index zuzugreifen (der als root erstellt wird), aber indem es die Sichtbarkeit als aufrufender Benutzer testet

Installation

sudo apt install plocate

Aufruf

plocate [OPTIONEN] PATTERNS

Optionen

Unix GNU Parameter Beschreibung

Anwendung

Index aktualisieren

sudo updatedb

siehe updatedb

Nach Dateipfaden suchen

locate doc/fonts

Groß-/Kleinschreibung ignorieren

locate -i Suchbegriff

Konfiguration

Dateien

Datei Beschreibung

Umgebegung

LOCATE_PATH
  • If given, appended after the list of --database paths (whether an explicit is given or the default is used)
  • Colon-delimiting and character escaping follows the same rules as for --database


Anhang

Siehe auch


  1. locate(1)
  2. plocate-build(8)
  3. mlocate(1)
  4. updatedb(8)

Dokumentation

Man-Page
  1. locate(1)

Links

Projekt

Weblinks