|
|
(74 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) |
Zeile 1: |
Zeile 1: |
| '''locate''' sucht schnell nach Dateinamen | | '''locate''' - schnelle Suche nach Dateinamen |
|
| |
|
| = Beschreibung = | | == Beschreibung == |
| * plocate findet alle Dateien auf dem System, die dem angegebenen Muster (oder allen Mustern, wenn mehrere angegeben sind) entsprechen. | | ; Index basiert |
| * Dies geschieht mit Hilfe eines Index, der von updatedb(8) erstellt oder (seltener) von einem anderen Index durch plocate-build(8) konvertiert wurde. | | Zuvor erstellter Index |
| | * Nicht das Dateisystem (wie bei [[find]]) |
| | * Schnelle Suche nach Dateinamen oder -pfaden |
| | * Diese wird regelmäßig aktualisiert |
|
| |
|
| * plocate ist weitgehend argumentkompatibel mit mlocate(1), ist aber deutlich schneller.
| | ; Vorteil |
| | |
| * 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 | | * Schnelle Suchergebnisse |
|
| |
|
| '''Nachteil'''
| | ; Nachteil |
| * Nicht alle Verzeichnisse werden durchsucht | | * Index evtl. nicht aktuell |
| | * Nicht alle Verzeichnisse werden durchsucht |
| ** /tmp, /var/spool, /media | | ** /tmp, /var/spool, /media |
| * Index nicht aktuell
| |
|
| |
|
| '''Implementierungen'''
| | === Implementierungen === |
| {| class="wikitable sortable" | | {| class="wikitable options big" |
| |- | | |- |
| ! Paket !! Beschreibung | | ! Paket !! Beschreibung |
| |- | | |- |
| | locate || | | | [[locate]] || findutils/locate |
| |- | | |- |
| | slocate || | | | [[mlocate]] || |
| |-
| | |- |
| | mlocate ||
| | | [[plocate]] || Schnelleres [[mlocate]] |
| |- | |
| | plocate || | |
| |} | | |} |
|
| |
|
| = Installation = | | == Installation == |
| # '''apt install plocate'''
| | <syntaxhighlight lang="bash" highlight="1" line copy> |
| | sudo apt install plocate |
| | </syntaxhighlight> |
|
| |
|
| = Syntax = | | == Aufruf == |
| $ '''plocate [OPTION]... PATTERN...'''
| | <syntaxhighlight lang="bash" highlight="1" line copy> |
| | plocate [OPTIONEN] PATTERNS |
| | </syntaxhighlight> |
|
| |
|
| == Parameter == | | === Optionen === |
| | {| class="wikitable sortable options gnu" |
| | |- |
| | ! Unix !! GNU !! Parameter !! Beschreibung |
| | |- |
| | | || || || |
| | |- |
| | |} |
|
| |
|
| == Optionen == | | == Anwendung == |
| | === Index aktualisieren === |
| | <syntaxhighlight lang="bash" highlight="1" line copy> |
| | sudo updatedb |
| | </syntaxhighlight> |
| | siehe [[updatedb]] |
|
| |
|
| -A, --all
| | === Nach Dateipfaden suchen === |
| Ignored for compatibility with mlocate(1).
| | <syntaxhighlight lang="bash" highlight="1" line copy> |
| | locate doc/fonts |
| | </syntaxhighlight> |
|
| |
|
| -b, --basename | | === Groß-/Kleinschreibung ignorieren === |
| Match only against the file name portion of the path name, ie., the directory names will be excluded from the match (but still printed). This
| | <syntaxhighlight lang="bash" highlight="1" line copy> |
| does not speed up the search, but can suppress uninteresting matches.
| | locate -i Suchbegriff |
| | </syntaxhighlight> |
|
| |
|
| -c, --count
| | == Konfiguration == |
| Do not print each match. Instead, count them, and print out a total number at the end.
| |
|
| |
|
| -d, --database DBPATH
| | === Dateien === |
| Find matches in the given database, instead of /var/lib/plocate/plocate.db. This argument can be given multiple times, to search multiple
| | {| class="wikitable options" |
| databases. It is also possible to give multiple databases in one argument, separated by :. (Any character, including : and \, can be escaped
| | |- |
| by prepending a \.)
| | ! Datei !! Beschreibung |
| | | |- |
| -e, --existing
| | | || |
| Print only entries that refer to files existing at the time locate is run. Note that unlike mlocate(1), symlinks are not followed by default
| | |- |
| (and indeed, there is no option to change this).
| | | || |
| | | |} |
| -i, --ignore-case
| |
| Do a case-insensitive match as given by the current locale (default is case-sensitive, byte-by-byte match). Note that plocate does not support
| |
| the full range of Unicode case folding rules; in particular, searching for ß will not give you matches on ss even in a German locale. Also
| |
| note that this option will be somewhat slower than a case-sensitive match, since it needs to generate more candidates for searching the index.
| |
| | |
| -l, --limit LIMIT
| |
| Stop searching after LIMIT matches have been found. If --count is given, the number printed out will be at most LIMIT.
| |
| | |
| -N, --literal
| |
| Print entry names without quoting. Normally, plocate will escape special characters in filenames, so that they are safe for consumption by
| |
| typical shells (similar to the GNU coreutils shell-escape-always quoting style), unless printing to a pipe, but this options will turn off
| |
| such quoting.
| |
| | |
| -0, --null
| |
| Instead of writing a newline after every match, write a NUL (ASCII 0). This is useful for creating unambiguous output when it is to be pro‐
| |
| cessed by other tools (like xargs(1)), as filenames are allowed to contain embedded newlines.
| |
| | |
| -r, --regexp | |
| Patterns are taken to be POSIX basic regular expressions. See regex(7) for more information. Note that this forces a linear scan through the
| |
| entire database, which is slow.
| |
| | |
| --regex
| |
| Like --regexp, but patterns are instead taken to be POSIX extended regular expressions.
| |
| | |
| -w, --wholename
| |
| Match against the entire path name. This is the default, so unless -b is given first (see above), it will not do anything. This option thus
| |
| exists only as compatibility with mlocate(1).
| |
| | |
| --help Print out usage information, then exit successfully.
| |
|
| |
|
| --version | | === Umgebung === |
| Print out version information, then exit successfully.
| | ; 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 |
|
| |
|
| = Konfiguration =
| | <noinclude> |
| == Index aktualisieren ==
| |
| # '''updatedb'''
| |
| siehe [[Linux:Befehl:updatedb]]
| |
|
| |
|
| == Dateien == | | == Anhang == |
| | === Siehe auch === |
| | {{Special:PrefixIndex/{{BASEPAGENAME}}/}} |
| | * [[mlocate]](1) |
| | * [[updatedb]](8) |
|
| |
|
| = Anwendungen = | | === Dokumentation === |
| == Nach Dateipfaden suchen == | | ; Man-Page |
| $ '''locate doc/fonts'''
| | # [https://manpages.debian.org/bookworm/plocate/locate.1.en.html locate(1)] |
|
| |
|
| == Groß-/Kleinschreibung ignorieren == | | === Links === |
| $ '''locate -i Suchbegriff'''
| | ==== Projekt ==== |
|
| |
|
| = Dokumentation = | | ==== Weblinks ==== |
| == Man-Pages == | |
| # locate(1)
| |
| # plocate-build(8)
| |
| # mlocate(1)
| |
| # updatedb(8)
| |
|
| |
|
| == Info-Pages ==
| | {{DEFAULTSORT:locate}} |
| = Links =
| | {{DISPLAYTITLE:locate}} |
| == Intern ==
| |
| # [[Linux:Befehl:updatedb]]
| |
|
| |
|
| == Weblinks ==
| | [[Kategorie:Linux/Suchen]] |
| | [[Kategorie:Linux/Befehl]] |
|
| |
|
| = Testfragen =
| | </noinclude> |
| <div class="toccolours mw-collapsible mw-collapsed">
| |
| ''Testfrage 1''
| |
| <div class="mw-collapsible-content">'''Antwort1'''</div>
| |
| </div>
| |
| <div class="toccolours mw-collapsible mw-collapsed">
| |
| ''Testfrage 2''
| |
| <div class="mw-collapsible-content">'''Antwort2'''</div>
| |
| </div>
| |
| <div class="toccolours mw-collapsible mw-collapsed">
| |
| ''Testfrage 3''
| |
| <div class="mw-collapsible-content">'''Antwort3'''</div>
| |
| </div>
| |
| <div class="toccolours mw-collapsible mw-collapsed">
| |
| ''Testfrage 4''
| |
| <div class="mw-collapsible-content">'''Antwort4'''</div>
| |
| </div>
| |
| <div class="toccolours mw-collapsible mw-collapsed">
| |
| ''Testfrage 5''
| |
| <div class="mw-collapsible-content">'''Antwort5'''</div>
| |
| </div> | |