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

Suchen Sie schnell nach Dateien in Linux mit dem Locate-Befehl

Wie der Name schon sagt, wird der locate-Befehl in Linux zum Lokalisieren (Durchsuchen) einer Datei verwendet. Es hat die folgende Syntax:

locate [options] filename

Obwohl es wirklich einfach ist, den Befehl locate zu verwenden, ist er mit vielen Wenns und Abers verbunden. Wenn eine Datei nicht gefunden wird, bedeutet dies nicht unbedingt, dass die Datei nicht auf dem System vorhanden ist.

Lassen Sie sich jetzt nicht verwirren. Ich werde erklären, wie der Befehl locate funktioniert und wie Sie ihn zum Suchen von Dateien verwenden können.

Locate-Befehl unter Linux verwenden

Der Befehl locate arbeitet mit einem Index, d. h. einer Datenbank mit Dateispeicherorten. Wenn Sie den Befehl verwenden, bezieht er sich auf diesen Index, anstatt das gesamte Dateisystem zu durchsuchen. Das ist der Grund, warum locate Dateien unter Linux superschnell findet.

Einige Linux-Distributionen indizieren regelmäßig automatisch das gesamte Dateisystem. Sie können diesen Index auch manuell erstellen (ich zeige ihn Ihnen später in diesem Artikel).

Die Verwendung des Befehls „locate“ ist kinderleicht. Sie müssen nur den Dateinamen angeben:

locate filename

Das Ergebnis zeigt alle Orte, an denen die von Ihnen angegebene Datei gefunden wurde.

[email protected]:~$ locate desktop.iso
/home/abhishek/desktop.iso

Das Beste daran ist, dass Sie sich nicht in einem bestimmten Verzeichnis befinden müssen, um die Datei zu finden. Denken Sie daran, dass der Befehl locate nicht das Dateisystem, sondern den Index durchsucht. Aus diesem Grund müssen Sie bei der Suche nach Dateien keinen Pfad oder kein Verzeichnis angeben.

Sie können auch eine Suche ohne Berücksichtigung der Groß-/Kleinschreibung durchführen, indem Sie die Option -i verwenden:

[email protected]:~$ locate -i desktop.iso
/home/abhishek/desktop.iso
/home/abhishek/Downloads/Desktop.iso

Beachten Sie, dass das Ergebnis möglicherweise alle Dateien anzeigt, die den Suchbegriff in ihrem Namen enthalten.

[email protected]:~$ locate -i desktop
/home/abhishek/eoan-desktop-amd64.iso
/home/abhishek/Bionic-Desktop-amd64.iso
/home/abhishek/desktop.iso
/home/abhishek/Downloads/Desktop.iso

Sie können Regex auch mit locate:

verwenden
locate -r regex_expression

Verwendung von updatedb zur Erstellung Ihres eigenen Index für den Locate-Befehl

Dies dient nur zu Informationszwecken und ich glaube nicht, dass Sie es verwenden müssen.

Wenn Sie einen Index des aktuellen Verzeichnisses (und seiner Unterverzeichnisse) erstellen möchten, können Sie den Befehl updatedb wie folgt verwenden:

updatedb -l0 -U my_directory -o index_file

Sobald Sie diese Indexdatei erstellt haben, können Sie den Befehl locate auffordern, diesen Index explizit zu verwenden:

locate -d index_file file_name

Ist find besser als der Find-Befehl?

Wenn Sie nach Dateien in einer Verzeichnisstruktur suchen möchten, die sich nicht viel ändert, ist der Befehl locate eine gute Option. Es ist auch superschnell.

Aber der Find-Befehl gibt Ihnen viele Optionen, besonders um komplexe Suchoptionen auszuführen.

Beide Befehle haben ihre Verwendung. Meiner Meinung nach, wenn Sie sich faul fühlen und ein schnelles Ergebnis wünschen, verwenden Sie locate. Wenn Ihnen das Ergebnis nicht gefällt, wechseln Sie zum Suchbefehl.

Was denkst du?


Linux
  1. Tipps zum Auflisten von Dateien mit ls in der Linux-Befehlszeile

  2. So finden Sie Dateien in Linux mit dem Find-Befehl

  3. 5 Befehlszeilen-Tools zum schnellen Auffinden von Dateien unter Linux

  4. Mit Gui nach Dateien suchen?

  5. Verwenden Sie Find and Locate, um unter Linux nach Dateien zu suchen

ls-Befehl in Linux zum Auflisten von Dateien

So suchen Sie nach Dateien über die Linux-Befehlszeile

So finden Sie Dateien mit dem fd-Befehl in Linux

Linux-Suche nach Zeichenfolgen in Ordnern und Dateien mit ack

lsof-Befehl unter Linux mit Beispielen

Linux-Comm-Befehl mit Beispielen