Plocate: Unterschied zwischen den Versionen
K Textersetzung - „line>“ durch „line copy>“ |
|||
(40 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
'''plocate''' - schnelles [[locate]] | |||
plocate | |||
== Beschreibung == | |||
; Findet Dateien | |||
Mustersuche | |||
; plocate ist ein [[locate]](1) | |||
Kleiner Index | |||
* Schnelle Suche | |||
* basiert auf [[posting lists]] | |||
; Ersatz für mlocate | |||
In vielen Aspekten überlegen | |||
* Auf SSDs und HDDs schnell | |||
; Index | |||
Indexbasierte Suche | |||
* | [[updatedb]] | ||
* [[plocate-build]](8) | |||
; 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 | |||
; Kompatibilität | |||
Es versucht nicht, die Kompatibilität mit BSD-Locate oder Nicht-UTF-8-Dateinamen und -Locales zu erhalten | |||
; E/A Operationen | |||
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 | * 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 | * 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 | ||
; Teilstrings | |||
Standardmäßig werden Muster als Teilstrings betrachtet, nach denen gesucht wird | 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 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) | ||
Zeile 22: | Zeile 38: | ||
* All dies entspricht dem Verhalten von mlocate(1) | * All dies entspricht dem Verhalten von mlocate(1) | ||
Wie mlocate(1) zeigt plocate alle Dateien an, die für den aufrufenden Benutzer sichtbar sind | ; Sicherheit | ||
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 == | ||
<syntaxhighlight lang="bash" highlight="1" line> | <syntaxhighlight lang="bash" highlight="1" line copy> | ||
sudo apt install plocate | sudo apt install plocate | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== Dateien === | |||
; /etc | |||
/etc/cron.daily/plocate | |||
/etc/updatedb.conf | |||
; /usr | |||
'''/usr/bin/plocate''' | |||
/usr/lib | |||
/usr/lib/systemd/system | |||
/usr/lib/systemd/system/plocate-updatedb.service | |||
/usr/lib/systemd/system/plocate-updatedb.timer | |||
/usr/sbin | |||
/usr/sbin/plocate-build | |||
/usr/sbin/updatedb.plocate | |||
/usr/share/doc | |||
/usr/share/doc/plocate/changelog.Debian.gz | |||
/usr/share/doc/plocate/copyright | |||
/usr/share/man | |||
/usr/share/man/man1/plocate.1.gz | |||
/usr/share/man/man5/updatedb.conf.5.gz | |||
/usr/share/man/man8/plocate-build.8.gz | |||
/usr/share/man/man8/updatedb.plocate.8.gz | |||
; /var | |||
/var/lib/plocate/CACHEDIR.TAG | |||
== Aufruf == | == Aufruf == | ||
<syntaxhighlight lang="bash" highlight="1" line> | <syntaxhighlight lang="bash" highlight="1" line copy> | ||
plocate [OPTIONEN] PATTERNS | plocate [OPTIONEN] PATTERNS | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== Optionen === | === Optionen === | ||
Weitgehend argumentkompatibel mit [[mlocate]] | |||
{| class="wikitable sortable options gnu" | {| class="wikitable sortable options gnu" | ||
|- | |- | ||
Zeile 45: | Zeile 91: | ||
== Anwendung == | == Anwendung == | ||
=== Index aktualisieren === | === Index aktualisieren === | ||
[[updatedb]] aktualisiert den Index | |||
=== Nach Dateipfaden suchen === | === Nach Dateipfaden suchen === | ||
<syntaxhighlight lang="bash" highlight="1" line> | <syntaxhighlight lang="bash" highlight="1" line copy> | ||
locate doc/fonts | locate doc/fonts | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== Groß-/Kleinschreibung ignorieren === | === Groß-/Kleinschreibung ignorieren === | ||
<syntaxhighlight lang="bash" highlight="1" line> | <syntaxhighlight lang="bash" highlight="1" line copy> | ||
locate -i Suchbegriff | locate -i Suchbegriff | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Zeile 73: | Zeile 116: | ||
=== Umgebung === | === Umgebung === | ||
{| class="wikitable options col1center" | |||
|- | |||
! Variable !! Beschreibung | |||
|- | |||
| 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 | |||
|} | |||
<noinclude> | <noinclude> | ||
Zeile 88: | Zeile 135: | ||
=== Dokumentation === | === Dokumentation === | ||
; Man-Page | ; Man-Page | ||
# | # https://manpages.debian.org/testing/plocate/locate.1.en.html | ||
=== Links === | === Links === | ||
Zeile 95: | Zeile 142: | ||
==== Weblinks ==== | ==== Weblinks ==== | ||
{{DEFAULTSORT: | {{DEFAULTSORT:plocate}} | ||
{{DISPLAYTITLE: | {{DISPLAYTITLE:plocate}} | ||
[[Kategorie:Linux/Suchen]] | [[Kategorie:Linux/Suchen]] |
Aktuelle Version vom 11. Mai 2025, 13:39 Uhr
plocate - schnelles locate
Beschreibung
- Findet Dateien
Mustersuche
- plocate ist ein locate(1)
Kleiner Index
- Schnelle Suche
- basiert auf posting lists
- Ersatz für mlocate
In vielen Aspekten überlegen
- Auf SSDs und HDDs schnell
- Index
Indexbasierte Suche updatedb
- 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
- Kompatibilität
Es versucht nicht, die Kompatibilität mit BSD-Locate oder Nicht-UTF-8-Dateinamen und -Locales zu erhalten
- E/A Operationen
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
- Teilstrings
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)
- Sicherheit
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
Dateien
- /etc
/etc/cron.daily/plocate /etc/updatedb.conf
- /usr
/usr/bin/plocate /usr/lib /usr/lib/systemd/system /usr/lib/systemd/system/plocate-updatedb.service /usr/lib/systemd/system/plocate-updatedb.timer /usr/sbin /usr/sbin/plocate-build /usr/sbin/updatedb.plocate /usr/share/doc /usr/share/doc/plocate/changelog.Debian.gz /usr/share/doc/plocate/copyright /usr/share/man /usr/share/man/man1/plocate.1.gz /usr/share/man/man5/updatedb.conf.5.gz /usr/share/man/man8/plocate-build.8.gz /usr/share/man/man8/updatedb.plocate.8.gz
- /var
/var/lib/plocate/CACHEDIR.TAG
Aufruf
plocate [OPTIONEN] PATTERNS
Optionen
Weitgehend argumentkompatibel mit mlocate
Unix | GNU | Parameter | Beschreibung |
---|---|---|---|
Anwendung
Index aktualisieren
updatedb aktualisiert den Index
Nach Dateipfaden suchen
locate doc/fonts
Groß-/Kleinschreibung ignorieren
locate -i Suchbegriff
Konfiguration
Dateien
Datei | Beschreibung |
---|---|
Umgebung
Variable | Beschreibung |
---|---|
LOCATE_PATH | Wenn angegeben, wird es nach der Liste der --database-Pfade angehängt
Trennung durch Doppelpunkte und Zeichen-Escape-Sequenzen folgen denselben Regeln wie für --database |
Anhang
Siehe auch
Dokumentation
- Man-Page
Links
Projekt
Weblinks