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

So verwenden Sie den which-Befehl in Linux

Einführung

Der which Mit dem Befehl können Benutzer die Liste der Pfade in $PATH durchsuchen Umgebungsvariable und gibt den vollständigen Pfad des als Argument angegebenen Befehls aus. Der Befehl funktioniert, indem er die ausführbare Datei findet, die dem angegebenen Befehl entspricht.

In diesem Tutorial lernen Sie, den which zu verwenden Befehl.

Voraussetzungen

  • Ein System, auf dem Linux ausgeführt wird
  • Zugriff auf das Terminal (Strg + Alt + T )

Linux, welche Befehlssyntax und -optionen

Die Syntax für which Befehl ist:

which -a [argument]

Argumente

Die [argument] Variable gibt den Befehl oder die Befehle an, die Sie suchen möchten.

Der folgende Befehl gibt beispielsweise die Position des cat-Befehls aus:

which cat

Optionen

Die which Befehl hat nur eine Option, -a . Es ist optional und wird verwendet, um alle gefundenen Übereinstimmungen zu drucken.

Der Befehl sucht von links nach rechts nach Übereinstimmungen. Wenn in den unter $PATH aufgelisteten Verzeichnissen mehrere Übereinstimmungen gefunden werden , which druckt nur den ersten. Die -a Option weist which an um alle Spiele auszudrucken.

Wichtig: Bei vielen Linux-Distributionen which schließt die Shell-integrierten Befehle aus und gibt ihre Position nicht aus.

Zum Beispiel:

which -a touch

Mehrere Übereinstimmungen zu haben bedeutet manchmal, dass eine Übereinstimmung ein symbolischer Link zur anderen ist. Es ist jedoch möglich, zwei Versionen desselben Befehls an verschiedenen Orten zu haben oder zwei verschiedene Befehle mit demselben Namen.

Hinweis: Im Gegensatz zu vielen anderen Befehlen ist which hat kein --help Möglichkeit. Um die Befehlsbeschreibung und Hilfe anzuzeigen, führen Sie man which aus .

Exit-Status

Die which Der Befehl gibt einen der folgenden Werte zurück, die seinen Beendigungsstatus angeben:

  • 0 . Alle Argumente wurden gefunden und sind ausführbar.
  • 1 . Ein oder mehrere Argumente existieren nicht oder sind nicht ausführbar.
  • 2 . Es wurde eine ungültige Option angegeben.

Beispiele für Linux-Welche Befehle

Die folgenden Beispiele zeigen, wie die which Befehl funktioniert und wie man die verfügbare Option verwendet.

1. Zeigen Sie den Pfad jeder ausführbaren Datei an

Um den Pfad eines beliebigen Befehls anzuzeigen, übergeben Sie den Befehlsnamen als Argument nach which .

Zum Beispiel:

which tr

Die Ausgabe zeigt den Pfad zur ausführbaren Datei des tr-Befehls, die sich in /usr/bin/tr befindet .

2. Mehrere Pfade von ausführbaren Dateien anzeigen

which akzeptiert mehrere Argumente und gibt den Pfad zu jedem in der angegebenen Reihenfolge aus.

Zum Beispiel:

which nc mount sort

Der Befehl arbeitet die bereitgestellte Liste ab und gibt die Ergebnisse für die Befehle nc, mount und sort aus, wobei jedes Ergebnis durch ein Zeilenumbruchzeichen getrennt wird.

3. Alle Instanzen auflisten

which zeigt nur die erste gefundene Übereinstimmung in $PATH an variable Verzeichnisliste. Verwenden Sie den -a Option, um jede Übereinstimmung für den angegebenen Befehl anzuzeigen.

Beispielsweise gibt die Suche nach Instanzen des Befehls less zwei Ergebnisse aus, wenn -a verwendet wird Möglichkeit:

which -a less

Verwenden Sie den Befehl ls, um die Dateidetails zu überprüfen und festzustellen, ob es sich bei beiden Versionen um ausführbare Dateien handelt. Ausführen:

ls -lh /usr/bin/less
ls -lh /bin/less

Die Ausgabe zeigt zwei identische Versionen desselben Befehls an zwei Stellen, beide 176 KB groß und beide ausführbar.

Hinweis: Das /bin Das Verzeichnis enthält ausführbare Dateien, die vom Systemadministrator und anderen Benutzern verwendet werden können und die für Notfallreparaturen des Systems erforderlich sind. Die Datei /usr/bin Verzeichnis ist das primäre Verzeichnis für ausführbare Befehle auf dem System.

4. Finden Sie symbolische Links

Verwenden Sie den -a Die Option listet alle Pfade auf, die eine Instanz des angegebenen Programms enthalten. Während mehrere Versionen desselben Programms auf einem System existieren können, ist manchmal eine der Instanzen nur ein symbolischer Link und keine Binärdatei.

Wenn Sie beispielsweise den folgenden Befehl ausführen, werden zwei Instanzen des Befehls atq ausgegeben:

which -a atq

Verwenden Sie wieder den ls Befehl, um die Details für beide Dateien zu überprüfen. Ausführen:

ls -lh /usr/bin/atq
ls -lh /bin/atq

Die Ausgabe zeigt, dass beide Dateien symbolische Links sind (-> ) nur 2 Byte groß und zeigt auf den at-Befehl.

5. Shell-integrierte Funktionen ausschließen

Wie bereits erwähnt, der which Der Befehl schließt eingebaute Shell-Ins von seiner Ausgabe aus.

Wenn Sie beispielsweise nach dem Speicherort der Befehle read und man fragen, wird nur der Speicherort für man ausgegeben ausführbare Befehlsdatei als read ist ein Bash-Shell-Befehl.

which read man

Fazit

Dieses Tutorial hat gezeigt, wie man which verwendet Befehl in Linux, um den Pfad zur ausführbaren Binärdatei eines Befehls zu finden. Weitere wichtige Linux-Befehle und Beispiele für deren Verwendung finden Sie in unserem Cheat-Sheet für Linux-Befehle, das Sie herunterladen können.


Linux
  1. So verwenden Sie den Linux-Befehl sed

  2. So verwenden Sie den Linux-Grep-Befehl

  3. So verwenden Sie den Verlaufsbefehl unter Linux

  4. So verwenden Sie den Su-Befehl unter Linux

  5. So verwenden Sie den id-Befehl unter Linux

So verwenden Sie den Linux-Ping-Befehl

So verwenden Sie den Linux Top-Befehl

So verwenden Sie den fd-Befehl auf einem Linux-System

Wie verwende ich den wget-Befehl unter Linux?

Wie verwende ich den xargs-Befehl unter Linux?

So verwenden Sie den RPM-Befehl unter Linux