Linux whereis-Befehl: Finden von Dateien und Befehlen

LinuxLinuxBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Willkommen im Systemadministrationsteam von TechCorp! Als neuer Junior-Systemadministrator ist es deine Aufgabe, den Befehl whereis zu beherrschen. Dieses leistungsstarke Tool hilft dir, Binärdateien, Quellcode und Handbuchseiten für verschiedene Befehle im Linux-System zu finden. Am Ende dieses Labs kannst du effizient durch das Dateisystem navigieren und wichtige Systemkomponenten lokalisieren.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/FileandDirectoryManagementGroup(["File and Directory Management"]) linux/FileandDirectoryManagementGroup -.-> linux/whereis("File/Command Finding") subgraph Lab Skills linux/whereis -.-> lab-215211{{"Linux whereis-Befehl: Finden von Dateien und Befehlen"}} end

Grundlagen des 'whereis'-Befehls verstehen

Deine erste Aufgabe bei TechCorp besteht darin, dich mit dem Befehl whereis vertraut zu machen. Dieser Befehl wird verwendet, um Binärdateien, Quellcode und Handbuchseiten für einen angegebenen Befehl zu finden.

Beginnen wir damit, whereis zu verwenden, um Informationen über den Befehl ls zu erhalten:

whereis ls

Du solltest eine Ausgabe ähnlich dieser sehen:

ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz

Diese Ausgabe liefert zwei Informationen:

  1. /usr/bin/ls: Dies ist der Speicherort der ausführbaren Binärdatei von ls. Wenn du ls im Terminal eingibst, wird dieses Programm ausgeführt.
  2. /usr/share/man/man1/ls.1.gz: Dies ist der Speicherort der Handbuchseite für ls. Handbuchseiten enthalten detaillierte Informationen darüber, wie Befehle verwendet werden.

Der Befehl whereis sucht Dateien in einer begrenzten Anzahl von Speicherorten, einschließlich Standard-Binärverzeichnissen, Bibliotheksverzeichnissen und Verzeichnissen für Handbuchseiten. Dies macht die Suche schneller als das Suchen im gesamten Dateisystem.

Wenn du wissen möchtest, was diese Pfade bedeuten:

  • /usr/bin ist ein üblicher Speicherort für Benutzerbefehle.
  • /usr/share/man ist der Ort, an dem Handbuchseiten normalerweise gespeichert werden.
  • man1 zeigt an, dass es sich um ein Handbuch für Benutzerbefehle handelt (im Gegensatz zu Systemaufrufen oder Bibliotheksfunktionen).
  • Die Erweiterung .gz bedeutet, dass die Datei komprimiert ist, um Speicherplatz zu sparen.

Finden von Binärdateien

Ihr Teamleiter bittet Sie, die Binärdatei für den Befehl grep zu finden. Die Option -b von whereis ist perfekt für diese Aufgabe, da sie speziell nach Binärdateien sucht.

Versuchen Sie den folgenden Befehl:

whereis -b grep

Sie könnten eine Ausgabe wie diese sehen:

grep: /usr/bin/grep

Diese Ausgabe zeigt den Speicherort der Binärdatei von grep. Binärdateien sind die ausführbaren Programme, die ausgeführt werden, wenn Sie einen Befehl eingeben. In diesem Fall führen Sie, wenn Sie den Befehl grep verwenden, tatsächlich das Programm aus, das sich unter /usr/bin/grep befindet.

Jetzt versuchen wir, die Binärdatei für einen Befehl zu finden, der möglicherweise nicht auf dem System existiert. Verwenden Sie whereis -b, um nach einem fiktiven Befehl namens nonexistent zu suchen:

whereis -b nonexistent

Sie sollten sehen:

nonexistent:

Diese leere Ausgabe zeigt an, dass keine Binärdatei für den Befehl nonexistent gefunden wurde. Dies ist nützlich, wenn Sie sich nicht sicher sind, ob ein bestimmter Befehl auf Ihrem System installiert ist.

Finden von Handbuchseiten

Ihre nächste Aufgabe besteht darin, die Handbuchseiten für den Befehl ssh zu finden. Handbuchseiten sind unerlässlich, um zu verstehen, wie verschiedene Befehle verwendet werden.

Verwenden Sie die Option -m mit whereis, um Handbuchseiten zu finden:

whereis -m ssh

Sie könnten eine Ausgabe ähnlich dieser sehen:

ssh: /usr/share/man/man1/ssh.1.gz

Diese Ausgabe zeigt den Speicherort der Handbuchseite für den Befehl ssh. Die Erweiterung .gz gibt an, dass die Datei komprimiert ist, um Speicherplatz zu sparen.

Um den Inhalt einer Handbuchseite anzuzeigen, würden Sie normalerweise den Befehl man verwenden. Da wir diesen Befehl jedoch noch nicht behandelt haben, lassen Sie uns einfach bestätigen, dass die Datei existiert:

ls /usr/share/man/man1/ssh.1.gz

Wenn die Datei existiert, sehen Sie ihren Namen in der Ausgabe. Dies bestätigt, dass die Handbuchseite tatsächlich auf Ihrem System vorhanden ist.

Das Verständnis der Speicherorte von Handbuchseiten ist für Systemadministratoren von entscheidender Bedeutung. Es ermöglicht Ihnen, zu überprüfen, ob für einen bestimmten Befehl Dokumentation verfügbar ist, was unschätzbar sein kann, wenn Sie verstehen müssen, wie ein Tool verwendet wird oder Probleme beheben müssen.

Kombinieren von Optionen

Wenn Sie sich mit whereis besser auskennen, fordert Sie Ihr Teamleiter heraus, sowohl die Binärdatei als auch die Handbuchseite für den Befehl python3 auf einmal zu finden.

Sie können die Optionen -b und -m kombinieren, um dies zu erreichen:

whereis -bm python3

Sie könnten eine Ausgabe wie diese sehen:

python3: /usr/bin/python3 /usr/lib/python3 /etc/python3 /usr/share/python3 /usr/share/man/man1/python3.1.gz

Diese Ausgabe liefert eine Fülle von Informationen:

  • /usr/bin/python3: Der Speicherort der Python 3-Binärdatei (das ausführbare Programm)
  • /usr/lib/python3: Das Verzeichnis, das Python 3-Bibliotheken enthält (wiederverwendbarer Code, der von Python-Programmen verwendet wird)
  • /etc/python3: Ein Verzeichnis, das Python 3-Konfigurationsdateien enthält
  • /usr/share/python3: Ein Verzeichnis, das gemeinsame Python 3-Daten enthält
  • /usr/share/man/man1/python3.1.gz: Der Speicherort der Python 3-Handbuchseite

Diese umfassende Übersicht ist besonders nützlich, wenn Sie mit komplexer Software arbeiten, die mehrere Komponenten im Dateisystem verteilt hat. Sie gibt Ihnen einen schnellen Überblick darüber, wo sich alles befindet.

Erkunden von Quellcode-Dateien

Für die letzte Aufgabe möchte Ihr Teamleiter, dass Sie prüfen, ob die Quellcode-Dateien für die bash-Shell auf dem System verfügbar sind. Quellcode-Dateien können nützlich sein, um zu verstehen, wie ein Programm funktioniert oder um benutzerdefinierte Versionen zu kompilieren.

Verwenden Sie die Option -s, um nach Quellcode-Dateien zu suchen:

whereis -s bash

Die Ausgabe ist möglicherweise leer, da Quellcode-Dateien auf den meisten Systemen standardmäßig nicht installiert werden. Wenn Sie eine Ausgabe sehen, würde dies den Speicherort der bash-Quellcode-Dateien auf Ihrem System anzeigen.

Jetzt kombinieren wir alle Optionen, um ein vollständiges Bild des bash-Befehls zu erhalten:

whereis bash

Dieser Befehl ohne Optionen zeigt alle verfügbaren Informationen über bash an, was so aussehen könnte:

bash: /usr/bin/bash /etc/bash.bashrc /usr/share/man/man1/bash.1.gz

Diese Ausgabe zeigt:

  • /usr/bin/bash: Die ausführbare Binärdatei für bash
  • /etc/bash.bashrc: Eine systemweite Konfigurationsdatei für bash
  • /usr/share/man/man1/bash.1.gz: Die Handbuchseite für bash

Das Verständnis der Speicherorte dieser Dateien ist für Systemadministrationsaufgaben von entscheidender Bedeutung. Wenn Sie beispielsweise das Standardverhalten von bash für alle Benutzer ändern müssen, wissen Sie, dass Sie in /etc/bash.bashrc suchen müssen.

Zusammenfassung

In diesem Lab haben Sie gelernt, wie Sie den Befehl whereis verwenden können, um Binärdateien, Quellcode-Dateien und Handbuchseiten für verschiedene Befehle im Linux-System zu finden. Sie haben herausgefunden, wie Sie:

  1. Grundlegende Informationen über Befehle erhalten
  2. Binärdateien mit der Option -b finden
  3. Handbuchseiten mit der Option -m finden
  4. Optionen kombinieren, um umfassendere Informationen zu erhalten
  5. Quellcode-Dateien mit der Option -s suchen

Diese Fähigkeiten werden Ihnen als Systemadministrator unschätzbar sein und Ihnen ermöglichen, wichtige Dateien schnell zu finden und die Struktur Ihres Linux-Systems zu verstehen.

Zusätzliche Optionen des whereis-Befehls, die in diesem Lab nicht behandelt wurden, sind:

  • -u: Nach ungewöhnlichen Einträgen suchen (Dateien, die nicht dem üblichen Namensmuster folgen)
  • -B: Die Orte ändern oder einschränken, an denen whereis nach Binärdateien sucht
  • -M: Die Orte ändern oder einschränken, an denen whereis nach Handbuchseiten sucht
  • -S: Die Orte ändern oder einschränken, an denen whereis nach Quellcode-Dateien sucht

Wenn Sie Ihre Reise als Systemadministrator fortsetzen, denken Sie daran, dass whereis nur eines von vielen Tools in Ihrem Arsenal ist. Es ist besonders nützlich für schnelle Abfragen, aber für umfassendere Dateisuche sollten Sie in Zukunft Befehle wie find oder locate erkunden.