plocate - Dateien anhand ihres Namens schnell finden
SYNOPSIS
plocate [OPTION]... MUSTER...
BESCHREIBUNG
plocate findet alle Dateien im System, die dem angegebenen Muster entsprechen (oder allen Mustern, wenn mehrere angegeben sind). Dies geschieht mithilfe eines Index, der von updatedb(8) erstellt wird oder (seltener) aus einem anderen Index mit plocate-build(8) konvertiert wird.
plocate ist weitgehend argumentkompatibel mit mlocate(1), ist aber deutlich schneller. Insbesondere muss es selten die gesamte Datenbank durchsuchen, es sei denn, das Muster ist sehr kurz (weniger als drei Bytes) oder Sie möchten nach einem regulären Ausdruck suchen. Es versucht nicht, die Kompatibilität mit BSD locate oder nicht-UTF-8-Dateinamen und -Spracheinstellungen aufrechtzuerhalten. Die meisten E/A-Operationen werden asynchron durchgeführt, aber die Ergebnisse werden synchronisiert, sodass die Ausgabe jedes Mal in der gleichen Reihenfolge erfolgt.
Wenn mehrere Muster angegeben werden, sucht plocate nach Dateien, die allen Mustern entsprechen. Dies ist die Hauptunterschied zu mlocate(1), das nach Dateien sucht, die einem oder mehreren Mustern entsprechen, es sei denn, die Option -A wird angegeben.
Standardmäßig werden Muster als zu suchende Teilzeichenfolgen behandelt. Wenn mindestens ein nicht-escapter Globbing-Metazeichen (*, ? oder []) angegeben ist, wird dieses Muster stattdessen als Globbing-Muster behandelt (was bedeutet, dass es mit * beginnen und enden muss, um eine Teilzeichenfolgenübereinstimmung zu erzielen). Wenn --regexp angegeben ist, werden Muster stattdessen als (nicht-verankerte) POSIX-Basis-Reguläre Ausdrücke behandelt, und wenn --regex angegeben ist, werden Muster als POSIX-erweiterte Reguläre Ausdrücke behandelt. All dies entspricht dem Verhalten von mlocate(1).
Wie mlocate(1) zeigt plocate alle Dateien an, die für den aufrufenden Benutzer sichtbar sind (weil sie Lese- und Ausführungsberechtigungen für alle übergeordneten Verzeichnisse haben), und keine, die dies nicht sind, indem es mit dem Set-GID-Bit ausgeführt wird, um auf den Index zuzugreifen (der als Root erstellt wird), aber indem es die Sichtbarkeit für den aufrufenden Benutzer testet.
EXIT STATUS
plocate wird mit 0 beendet, um anzuzeigen, dass eine Übereinstimmung gefunden wurde oder dass --help oder --version übergeben wurden. Andernfalls wird plocate mit dem Statuscode 1 beendet, was anzeigt, dass ein Fehler aufgetreten ist oder dass keine Übereinstimmungen gefunden wurden.
OPTIONEN
-A, --all
Wird zur Kompatibilität mit mlocate(1) ignoriert.
-b, --basename
Nur mit dem Dateinamen-Teil des Pfadnamens abgleichen, d. h. die Verzeichnisnamen werden von der Übereinstimmung ausgeschlossen (aber weiterhin ausgegeben). Dies beschleunigt die Suche nicht, kann aber uninteressante Übereinstimmungen unterdrücken.
-c, --count
Nicht jede Übereinstimmung ausgeben. Stattdessen diese zählen und am Ende eine Gesamtzahl ausgeben.
-d, --database DBPATH
Übereinstimmungen in der angegebenen Datenbank suchen, anstatt in /var/lib/plocate/plocate.db. Dieses Argument kann mehrmals angegeben werden, um mehrere Datenbanken zu durchsuchen. Es ist auch möglich, mehrere Datenbanken in einem Argument anzugeben, getrennt durch : \. (Jedes Zeichen, einschließlich : und \, kann durch ein vorangestelltes \ escaped werden.)
-e, --existing
Gibt nur Einträge aus, die sich auf Dateien beziehen, die zum Zeitpunkt der Ausführung von locate vorhanden sind. Beachten Sie, dass im Gegensatz zu mlocate(1) symbolische Links standardmäßig nicht durchlaufen werden (und es gibt auch keine Option, dies zu ändern).
-i, --ignore-case
Führt eine nicht zwischen Groß- und Kleinschreibung unterscheidende Suche gemäß der aktuellen Locale durch (standardmäßig ist die Suche zwischen Groß- und Kleinschreibung unterscheidend und erfolgt Byte für Byte). Beachten Sie, dass plocate nicht die gesamte Bandbreite der Unicode-Regeln für die Groß- und Kleinschreibungsumwandlung unterstützt; insbesondere führt die Suche nach ß nicht zu Übereinstimmungen mit ss, selbst in einer deutschen Locale. Beachten Sie auch, dass diese Option etwas langsamer ist als eine Suche, die zwischen Groß- und Kleinschreibung unterscheidet, da mehr Kandidaten für die Suche im Index generiert werden müssen.
-l, --limit LIMIT
Stoppt die Suche, nachdem LIMIT Übereinstimmungen gefunden wurden. Wenn --count angegeben ist, ist die ausgegebene Zahl höchstens LIMIT.
-N, --literal
Gibt Dateinamen ohne Anführungszeichen aus. Normalerweise führt plocate eine Maskierung von Sonderzeichen in Dateinamen durch, so dass sie für die Verwendung in typischen Shells sicher sind (ähnlich dem Stil der Always-Maskierung der GNU Coreutils), es sei denn, die Ausgabe erfolgt in eine Pipe, aber diese Option deaktiviert diese Maskierung.
-0, --null
Schreibt anstelle eines Zeilenumbruchs nach jeder Übereinstimmung ein NULL-Zeichen (ASCII 0). Dies ist nützlich, um eine eindeutige Ausgabe zu erstellen, wenn diese von anderen Tools verarbeitet werden soll (wie z. B. xargs(1)), da Dateinamen eingebettete Zeilenumbrüche enthalten dürfen.
-r, --regexp
Die Muster werden als POSIX-Basis-reguläre Ausdrücke interpretiert. Siehe regex(7) für weitere Informationen. Beachten Sie, dass dies eine lineare Suche durch die gesamte Datenbank erzwingt, was langsam ist.
--regex
Wie --regexp, aber die Muster werden stattdessen als POSIX-erweiterte reguläre Ausdrücke interpretiert.
-w, --wholename
Übereinstimmung mit dem gesamten Pfadnamen. Dies ist die Standardeinstellung, so dass es, es sei denn, -b wird zuerst angegeben (siehe oben), nichts bewirkt. Diese Option dient daher nur der Kompatibilität mit mlocate(1).
--help
Gibt Nutzungsinformationen aus und beendet das Programm dann erfolgreich.
--version
Gibt Versionsinformationen aus und beendet das Programm dann erfolgreich.
UMGEBUNG
LOCATE_PATH
Wenn angegeben, wird dies nach der Liste der durch --database angegebenen Pfade (ob explizit angegeben oder die Standardeinstellung verwendet) angehängt. Die Verwendung von Doppelpunkten als Trennzeichen und die Maskierung von Zeichen folgen den gleichen Regeln wie für --database.
AUTOR
Steinar H. Gunderson <_>
SIEHE AUCH
plocate-build(8), mlocate(1), updatedb(8)