Zum Inhalt springen

Locate: Unterschied zwischen den Versionen

Aus Foxwiki
Zeile 26: Zeile 26:
| [[plocate]] || Viel schnelleres [[locate]]
| [[plocate]] || Viel schnelleres [[locate]]
|}
|}
== 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 ==
== Installation ==

Version vom 29. April 2025, 10:08 Uhr

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 findutils/locate
plocate Viel schnelleres locate

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

Umgebung

LOCATE_PATH
  • Wenn angegeben, wird es nach der Liste der --database-Pfade angehängt
    • unabhängig davon, ob ein expliziter Wert angegeben wurde oder der Standardwert verwendet wird
  • Trennung durch Doppelpunkte und Zeichen-Escape-Sequenzen folgen denselben Regeln wie für --database


Anhang

Siehe auch

Dokumentation

Man-Page
  1. locate(1)

Links

Projekt

Weblinks