Locate: Unterschied zwischen den Versionen
K →Syntax |
|||
Zeile 2: | Zeile 2: | ||
= Beschreibung = | = Beschreibung = | ||
* 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. | |||
* sucht nach Datei- oder Pfadnamen in einem zuvor erstellten Index. | * sucht nach Datei- oder Pfadnamen in einem zuvor erstellten Index. | ||
* plocate - find files by name, quicklyNicht das Dateisystem wird durchsucht (wie bei find), sondern ein zuvor erstellter Index. | * plocate - find files by name, quicklyNicht das Dateisystem wird durchsucht (wie bei find), sondern ein zuvor erstellter Index. |
Version vom 27. März 2022, 13:09 Uhr
locate sucht schnell nach Dateinamen
Beschreibung
- 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.
- sucht nach Datei- oder Pfadnamen in einem zuvor erstellten Index.
- plocate - find files by name, quicklyNicht das Dateisystem wird durchsucht (wie bei find), sondern ein zuvor erstellter Index.
- 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.
Vorteil
- Schnelle Suchergebnisse
Nachteil
- Nicht alle Verzeichnisse werden durchsucht
- /tmp, /var/spool, /media
- Index nicht aktuell
Implementierungen
Paket | Beschreibung |
---|---|
locate | |
slocate | |
mlocate | |
plocate |
Installation
# apt install plocate
Syntax
$ plocate [OPTION]... PATTERN...
Parameter
Optionen
Konfiguration
Index aktualisieren
# updatedb
siehe Linux:Befehl:updatedb
Dateien
Anwendungen
Nach Dateipfaden suchen
$ locate doc/fonts
Groß-/Kleinschreibung ignorieren
$ locate -i Suchbegriff
Dokumentation
Man-Pages
- locate(1)
- plocate-build(8)
- mlocate(1)
- updatedb(8)
Info-Pages
Links
Intern
Weblinks
Testfragen
Testfrage 1
Antwort1
Testfrage 2
Antwort2
Testfrage 3
Antwort3
Testfrage 4
Antwort4
Testfrage 5
Antwort5