GNU/Linux >> LINUX-Kenntnisse >  >> Linux

15 Praktische Beispiele für den Locate-Befehl unter Linux

In Linux gibt es viele Tools zum Suchen und Lokalisieren von Dateien und Verzeichnissen. Aus früheren Erfahrungen haben wir gesehen, dass einige dieser Tools in großem Umfang sehr reibungslos funktionierten und einige dieser Tools etwas langsamer waren, aber sie hatten einen großen Umfang, den sie im Verzeichnis abdecken konnten. Weiter oben haben wir gesehen, wie man den Befehl fd und den Befehl find unter Linux verwendet, um eine Datei zu finden. Anstelle der Befehle fd oder find können wir unter Linux den Befehl locate verwenden, um schnell und effizient nach einer Datei mit bestimmten Parametern zu suchen.

Der Hauptunterschied zwischen dem fd-Befehl und dem locate-Befehl besteht darin, dass der locate-Befehl Dateien im Verzeichnis schnell finden kann, weil er eine spezielle Datenbank zum Durchsuchen der Abfragen verwendet.

In Linux- und Unix-basierten Systemen verwendet der locate-Befehl die mlocate oder die Merging-locate-Datenbank zum Durchsuchen des gesamten Systems. Der Befehl locate wurde erstmals 1982 auf BSD- und GNU-Rechnern mit der GNU-Datenschutzlizenz veröffentlicht.

Wie funktioniert der Ortungsbefehl?

Die Arbeitsweise des locate-Befehls unter Linux ist sehr konventionell und leicht verständlich. Es verwendet eine Datenbank auf dem System, die die mit dem gesamten Dateisystem verknüpften Pfade speichert. Wenn wir den Befehl locate ausführen, trifft er auf die Datenbank und sucht nach dem Ergebnis. Der locate-Befehl verwendet die updatedb- oder die mlocate-Datenbank zum Speichern aller Sucher und Pfade.

Da das Lokalisieren den Pfad und die Links verwendet, um die Elemente zu finden, macht dies den Lokalisierungsbefehl schneller. Wenn Sie Änderungen vornehmen oder Ihre mlocate DB wiederherstellen müssen, können Sie aus dem unten genannten Verzeichnis auf die Konfigurationsdatei zugreifen.

/var/lib/mlocate/mlocate.db

Normalerweise die mlocate-Datenbank wird automatisch aktualisiert, wenn wir einen Lokalisierungsbefehl auf dem Linux-System ausführen. In einigen Fällen erhält die Datenbank jedoch möglicherweise nicht sofort die Systemdaten, wenn eine Datei gelöscht oder eine neue Datei zum System hinzugefügt wird. In diesem Fall können Sie die mlocate-Datenbank auf Ihrem Linux-System manuell aktualisieren, um die Ortungsbefehle leistungsfähiger zu machen.

Sie können auch die updatedb aktualisieren Konfiguration über ein Skript.

- -
# cat /etc/updatedb.conf
PRUNE_BIND_MOUNTS="yes"
PRUNENAMES=".git .bzr .hg .svn"
PRUNEPATHS="/tmp /var/spool /media"
PRUNEFS="NFS nfs nfs4 rpc_pipefs afs binfmt_misc proc smbfs autofs iso9660 ncpfs coda devpts ftpfs devfs mfs shfs sysfs cifs lustre_lite tmpfs usbfs udf fuse.glusterfs fuse.sshfs ecryptfs fusesmb devtmpfs"

Locate auf dem System installieren

Heutzutage ist in allen wichtigen Distributionen der Befehl locate mit dem Linux-System vorinstalliert. Wenn Sie den Befehl locate auf Ihrem System nicht finden können, können Sie ihn auf Ihrem Rechner installieren und damit beginnen.

Die Installationsmethode des locate-Befehls auf einem Linux-System ist einfach. Das Paket ist bereits im offiziellen Repository von Linux gespeichert, sodass wir es über den aptitude-Kommentar auf Debian Linux und den DNF- oder Yum-Befehl auf Redhat- oder Fedora-Linux-Systemen installieren können.

Bevor Sie die Installationsbefehle ausführen, können Sie überprüfen, ob der Befehl locate auf Ihrem System installiert ist oder nicht. Um dies zu überprüfen, können Sie einfach locate eingeben und drücken Sie die Eingabetaste auf Ihrer Terminal-Shell. Wenn Sie die Versions- oder Statusinformationen erhalten, ist das Tool auf Ihrem System installiert.

Wie Sie im folgenden Bild sehen können, ist das Ortungstool nicht installiert, daher führen wir jetzt die Installationsbefehle aus.

$ locate

Führen Sie die unten aufgeführten Befehle auf Ihrem Ubuntu- oder Debian-basierten Linux aus, um das Ortungstool auf Ihrem System zu installieren.

sudo apt update
sudo apt install mlocate

Wenn Sie Yum-basiertes Fedora und ein Redhat-Linux-System verwenden, können Sie den unten genannten Befehlssatz ausführen, um das Ortungstool zu erhalten.

sudo yum -y update
sudo yum install mlocate

Beispiele für Lokalisierungsbefehle

In diesem Beitrag sehen wir einige nützliche und praktische Beispiele aus dem wirklichen Leben, die Sie durchgehen und lernen sollten. Der Befehl locate funktioniert reibungslos mit allen wichtigen Linux-Distributionen sowohl auf dem Desktop als auch auf dem Server.

1. Nach einer Datei suchen

Das allererste Beispiel, das wir über den Befehl locate sehen werden, ist, wie wir mit dem Befehl locate eine Datei im gesamten Dateisystem durchsuchen können. Dieser Befehl wird mit allen MySQL-Dateien zurückgegeben, die wir im gesamten System haben.

locate mysql

2. Ausgabe formatieren

Wenn Sie nun den oben genannten Befehl filtern möchten, können wir das weniger verwenden Syntax mit dem Pipe-Symbol. Wir hätten auch den GREP-Befehl verwenden können, um die Ausgabe zu sortieren oder zu filtern.

locate mysql | less

3. Vorhandene Dateien anzeigen

Wie ich bereits erwähnt habe, würde der Befehl locate manchmal die Datei oder die Daten, die wir gerade aus dem Linux-System gelöscht oder dem Dateisystem hinzugefügt haben, nicht entfernen. Um den entsprechenden Wert zu erhalten, können wir also ein -e verwenden Flag mit dem locate-Befehl, um die bereits gelöschten Dateien zu entfernen.

Hier habe ich zum Beispiel einen rm ausgeführt Befehl um eine Datei aus dem System zu entfernen. Wenn ich jetzt den Befehl locate auf herkömmliche Weise unter Linux ausführe, erhalte ich das Ergebnis, dass die Datei noch auf dem System vorhanden ist. Aber wenn wir den locate-Kommentar mit einem -e-Flag ausführen, lädt er die locate-Datenbank sofort neu und aktualisiert die Ausgabe.

rm file1.txt
locate file1.txt
locate -e file1.txt

4. Zählen Sie die vorhandenen Dateien

Der Befehl locate kann auch für eine bestimmte Abfrage ausgeben, wie viele Dateien auf dem System vorhanden sind.

locate -c mysql

5. Fehler beim Suchen deaktivieren

Wenn wir ein Element über den Befehl locate finden und Fehler im Pfad oder in der Syntax machen, wird uns oft eine Fehlermeldung zurückgegeben. Wenn wir die Fehlermeldung ausblenden wollen, können wir ein zusätzliches -q hinzufügen Flag am Ende des Befehls, um die Fehler während der Suche zu deaktivieren.

locate -d ~/Documents/database.db hello
locate -d ~/Documents/database.db hello -q

6. Begrenzen Sie die Anzahl der Suchergebnisse

Wir können auch ein Limit für den Befehl locate festlegen, um die Suchergebnisse anzuzeigen. Der unten erwähnte Befehl „locate“ zeigt nur zehn Ergebnisse für die Abfrage, um die .txt zu finden Datei im Dateisystem.

locate *.txt -n 10

7. Dateien mit Berücksichtigung der Groß-/Kleinschreibung ignorieren

Standardmäßig unterscheidet der Befehl locate unter Linux zwischen Groß- und Kleinschreibung, aber Sie können ihn auf Ihrem System deaktivieren. Um die Groß-/Kleinschreibung des Lokalisierungsbefehls zu deaktivieren, können wir ein -i verwenden Flag im Befehl.

$ locate file1.txt
$ locate FILE1.TXT
$ locate -i FILE1.TXT

8. Suchen Sie nach einer Datei mit einem genauen Namen

Wenn wir nach einer Datei mit einem genauen Namen suchen möchten, können wir das -r verwenden -Flag im Befehl locate unter Linux. Im unten erwähnten Befehl wird der $ Das Zeichen wird als Ausdruck verwendet, um anzuzeigen, dass die Sitzung beendet wurde, und das Schrägstrichzeichen (/) ist ein Symbol für die Grenzen des Befehls.

locate -r /file404_UbuntuPIT.txt$

9. Separate Ausgabeeinträge mit ASCII NUL

Normalerweise gibt der Befehl locate unter Linux die Ausgabe mit einem Zeilenumbruch aus, aber wenn wir wollen, können wir das Leerzeichen aus der Ausgabe entfernen und die Ausgabe mit einer ASCII-Null ausgeben.

locate -0 apache

10. Datenbankstatistiken anzeigen

Neben dem Durchsuchen der Dateien können wir auch die Datenbankstruktur für eine bestimmte Abfrage auf dem System mit einem -s-Zeichen auf dem locate-Befehl unter Linux anzeigen.

locate -S

11. mlocate-Datenbank aktualisieren

Wenn wir die Datenbank des locate-Befehls auf unserem Linux-System manuell aktualisieren müssen, können wir den folgenden Befehl mit sudo-Zugriff ausführen.

sudo updatedb

12. Wählen Sie eine andere mlocate-Datenbank aus

Wenn beim Durchsuchen einer Abfrage ein Problem auftritt, liegt möglicherweise ein Problem mit der Locate-Datenbank vor. Der Befehl locate verwendet standardmäßig die mlocate-Datenbank; Sie können auch zwischen anderen Datenbanken für den Befehl locate wechseln.

default mlocate database
locate -d [new database path] [pattern]

13. Diakritische Zeichen und Akzentunterschiede ignorieren

In einigen Fällen haben Sie möglicherweise ein griechisches oder lateinisches Alphabet in Ihrem Dateinamen verwendet, und beim Durchsuchen dieser Datei haben Sie möglicherweise ein normales Alphabet anstelle dieses speziellen Alphabets verwendet. In diesem Fall gibt der Befehl locate keine Ausgabe zurück. Um dieses Problem zu vermeiden und diakritische Zeichen und Akzentunterschiede zu ignorieren, können Sie ein -t verwenden Flagge in Ihrem Befehl.

locate My_new_image_ca.jpeg
locate -t My_new_image_ca.jpeg

14. Nur Anzeige Anwesend Dateien in Ihrem System

Ich habe bereits erwähnt, dass der Befehl locate manchmal die gelöschten Dateien in der Ausgabe zurückgibt. Es gibt Möglichkeiten, die es Ihnen ermöglichen, Dateien zu vermeiden, die nicht physisch auf Ihrem System vorhanden sind und bereits gelöscht wurden. Sie können nur die Dateien anzeigen, die auf Ihrem System vorhanden sind, indem Sie ein -i verwenden und ein -e Flag für den Befehl locate unter Linux.

locate -i -e *text.txt*

15. Suchen Sie nach bestimmten Dateitypen

Mit dem Befehl locate können Sie in Ihrem Linux-System nach einem bestimmten Dateityp suchen. Die unten aufgeführten Befehle zeigen beispielsweise, wie Sie mit dem Befehl locate nach Text- und JPEG-Bilddateien in Ihrem System suchen.

locate  -c “*.txt*”
locate  -c “*.jpg*”

Schlussworte

Im gesamten Beitrag haben wir gesehen, wie der Befehl locate funktioniert und welche Art von Datenbank und Operation er verwendet, um ein effizientes Suchergebnis zu liefern. Wir haben einige leistungsstarke und am häufigsten verwendete Beispiele für den Befehl locate durchgesehen.

Ich hoffe, dieser Beitrag war hilfreich für Sie; Wenn ja, teilen Sie diesen Beitrag bitte mit Ihren Freunden und der Linux-Community. Sie können uns auch mitteilen, welches Tool für Sie am nützlichsten ist, um Dateien auf Ihrem System zu finden.


Linux
  1. cp-Befehl unter Linux:7 praktische Beispiele

  2. Linux-Shutdown-Befehl:5 praktische Beispiele

  3. 5 praktische Beispiele des dd-Befehls unter Linux

  4. 10 praktische Beispiele für Linux-nm-Befehle

  5. 7 Beispiele für Linux-df-Befehle

12 praktische Beispiele für In Command unter Linux

15 Praktische Beispiele für den Rsync-Befehl unter Linux

5 praktische Beispiele für Tail-Befehle unter Linux

Echo-Befehl unter Linux:7 praktische Beispiele

Praktischer Ping-Befehl in Linux-Beispielen

id-Befehlsbeispiele in Linux