Verwenden Sie die Befehle „find“, „locate“, „which“ und „whereis“, um unter Linux nach Dateien zu suchen

Es gibt mehrere Möglichkeiten, Dateien vom Terminal in Linux aus zu finden und zu lokalisieren. Zu den hierfür am häufigsten verwendeten Befehlen gehören die Befehle „Finden“, „Lokalisieren“, „Welche“ und „Where“. Werfen wir einen Blick auf diese vier Suchbefehle, ihre Gemeinsamkeiten und Unterschiede.

1. finden

Der unkomplizierte Ansatz zum Suchen nach Dateien in einem bestimmten Verzeichnis ist die Verwendung des Befehls „find“. Wenn das Verzeichnis, in dem die Suche durchgeführt werden soll, nicht explizit angegeben ist, wird die Suche im aktuellen Verzeichnis durchgeführt.

Der folgende Screenshot zeigt, wie im aktuellen Verzeichnis (.) nach allen Dateinamen gesucht wird, die mit der Erweiterung .txt enden.

Die Suche kann auch auf der Grundlage von Zeitstempeln, Dateiberechtigungen, Dateigröße, Dateityp, Dateieigentümer usw. durchgeführt werden. Zur Steuerung der Suchparameter können reguläre Ausdrücke verwendet werden. Ausführlichere Anweisungen zum Suchbefehl finden Sie hier.

2. lokalisieren

Dieser Befehl ist eine weitere Möglichkeit, Dateien nach Namen zu suchen. Der vorherige Befehl durchsucht das angegebene Verzeichnis und stellt die Ergebnisse dann dem Benutzer zur Verfügung. Dieses Tool führt die Suche anhand einer Datenbank namens „mlocate.db“ durch, die sich in „/var/lib/mlocate/mlocate.db“ befindet. Diese Datenbank wird jeden Morgen vom Cron-Dienstprogramm aktualisiert.

Der Befehl wird schneller ausgeführt als „find“, da die Suche in einer vorhandenen Datenbank erfolgt, die bereits die Liste aller Dateien und Verzeichnisse auf dem System zusammengestellt hat.

„locate“ gefolgt vom Dateinamen zeigt den absoluten Pfadnamen an, in dem diese Datei vorhanden ist.

Nehmen wir an, dass im Home-Verzeichnis ein Skript erstellt wurde.

Wenn wir versuchen, das neu erstellte und kopierte Skript zu finden, erhalten wir keine Ausgabe.

Da Cron die Datenbank nur morgens aktualisiert, werden im Laufe des Tages alle Dateien zum System hinzugefügt. Anschließend muss die Datenbank manuell aktualisiert werden. Dies kann mit dem Befehl „updateb“ erfolgen.

Wenn wir versuchen, das benutzerdefinierte Skript zu „lokalisieren“, kann es die Datei finden.

3. welche

Nachdem wir die Befehle zum Suchen nach Dateien besprochen haben, wenden wir uns einem Befehl zu, der bei der Suche nach dem absoluten Pfad ausführbarer Dateien auf dem System helfen kann: which.

Eine ausführbare Datei/ein Skript/eine Binärdatei kann an mehreren Stellen im System vorhanden sein. die in den in den Umgebungsvariablen $PATH und $MANPATH angegebenen Verzeichnissen nach der Existenz der angegebenen ausführbaren Datei sucht.

Ohne Schalter, der den ersten absoluten Pfad anzeigt, der für eine ausführbare Datei gefunden wurde.

-a Schalter zeigt alle Vorkommen gefundener absoluter Pfade für die angegebene ausführbare Datei an.

Die absoluten Pfade für mehrere ausführbare Dateien können ermittelt werden, indem die ausführbaren Dateien nacheinander angegeben werden.

4. wo ist

whereis ist ein weiterer Befehl und wird verwendet, um drei Informationen zu einer ausführbaren Datei abzurufen:

  • absoluter Pfad der Binärdatei
  • Absoluter Pfad, in dem der Quellcode dieser Binärdatei auf dem System vorhanden ist
  • Absoluter Pfad des Handbuchs, das für diese Binärdatei vorhanden ist

Für „bzgrep“ befindet sich die Binärdatei in „/bin“ und das Handbuch befindet sich in „/usr/share/man/man1“. Der Quellcode ist nicht auf dem System vorhanden.

whereis kann mit dem Schalter -b angewiesen werden, nur nach dem absoluten Pfad der Binärdatei zu suchen. Die Suche darf nur in den Verzeichnissen durchgeführt werden, die nach dem Schalter -B aufgeführt sind. Namen nach -f geben alle Binärdateien an, für die Informationen abgerufen werden müssen.

Ebenso kann die Suche mithilfe der Schalter -s und -m nur auf Quellcode oder nur Handbücher beschränkt werden. -S und –M gefolgt von Verzeichnisnamen geben die Verzeichnisse an, in denen nach Quellcode bzw. Handbüchern gesucht werden soll.

Der Schalter -l liefert eine detaillierte Auflistung der absoluten Pfade aller Verzeichnisse, die von whereis zur Durchführung der Suche verwendet werden.

Abschluss

An Tools zum Suchen und Lokalisieren von Dateien im Terminal mangelt es nicht. Ich hoffe, Sie haben jetzt eine gute Vorstellung von den vier nützlichen Suchtools auf Linux-Systemen. Wenn Sie weitere Details zu ihrer Verwendung benötigen, können Sie sich die Handbuchseiten für eine detaillierte Dokumentation ansehen.

Index
  1. 1. finden
  2. 2. lokalisieren
  3. 3. welche
  4. 4. wo ist
  5. Abschluss

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Go up