So überprüfen Sie, ob ein Programm unter Linux vorhanden ist
- 3137
- 465
- Miriam Bauschke
Ein Shell-Skript ist ein leistungsstarkes Tool zur Automatisierung von Aufgaben auf UNIX-basierten Systemen. Eine häufige Voraussetzung beim Schreiben von Shell -Skripten ist die Überprüfung, ob ein bestimmtes Programm oder ein bestimmtes Befehl auf dem System vorhanden ist. Dieser Artikel führt Sie durch verschiedene Methoden, um diese Überprüfung durchzuführen, sodass Sie Ihr Skript robuster und zuverlässiger machen können.
Inhaltsverzeichnis:
- Verwenden des Befehls -vs
- Verwenden Sie den Befehl type
- Verlassen sich auf den Befehl welcher Befehl
- Beschäftigung des Hash -Befehls
- Tipps für Best Practices
1. Verwendung der Befehl -v
Der 'Befehl -v' ist eine posix-konforme Methode zur Überprüfung der Existenz eines Programms. Es ist ein integrierter Shell-Befehl, der den Pfad eines Befehls zurückgibt, wenn er im System vorliegt. Hier ist ein Beispiel dafür, wie man es benutzt:
if command -v programm_name> /dev /null 2> & 1; dann existiert das Echo "Programm existiert" sonst Echo "-Programm nicht" fi12345 | if command -v programm_name> /dev /null 2> & 1; dann existiert das Echo "Programm existiert" sonst Echo "-Programm nicht" fi |
Ersetzen "Programmname" Mit dem Programm, das Sie überprüfen möchten.
2. Verwendung der Typ
Befehl
Der Typ Der Befehl ist ein weiterer integrierter Shell-Befehl, mit dem die Existenz eines Programms bestätigt werden kann. Es ähnelt dem Befehl -v, enthält aber auch Informationen über den Befehlstyp (Alias, Funktion oder Datei). Hier erfahren Sie, wie man es benutzt:
Wenn Sie program_name> /dev /null 2> & 1; dann existiert das Echo "Programm existiert" sonst Echo "-Programm nicht" fi12345 | Wenn Sie program_name> /dev /null 2> & 1; dann existiert das Echo "Programm existiert" sonst Echo "-Programm nicht" fi |
Ersetzen "Programmname" Mit dem Programm, das Sie überprüfen möchten.
3. Sich auf das verlassen welche
Befehl
Der welche Der Befehl ist ein externes Dienstprogramm, das nach einem bestimmten Befehl in den von den angegebenen Verzeichnissen sucht WEG Umgebungsvariable. Obwohl es nicht posix-konform ist, ist es häufig auf UNIX-basierten Systemen erhältlich. Hier erfahren Sie, wie man es benutzt:
Wenn welches Programm_Name> /dev /null 2> & 1; dann existiert das Echo "Programm existiert" sonst Echo "-Programm nicht" fi12345 | Wenn welches Programm_Name> /dev /null 2> & 1; dann existiert das Echo "Programm existiert" sonst Echo "-Programm nicht" fi |
Ersetzen "Programmname" Mit dem Programm, das Sie überprüfen möchten.
4. Anwenden Hash
Befehl
Der Hash Der Befehl ist ein integrierter Shell-Befehl, der eine Hash-Tabelle mit kürzlich ausgeführten Befehlen verwaltet und die Suche nach Befehlen beschleunigt. Sie können es verwenden, um das Vorhandensein eines Programms wie folgt zu überprüfen:
if Hash Program_Name 2> /dev /null; dann existiert das Echo "Programm existiert" sonst Echo "-Programm nicht" fi12345 | if Hash Program_Name 2> /dev /null; dann existiert das Echo "Programm existiert" sonst Echo "-Programm nicht" fi |
Ersetzen "Programmname" Mit dem Programm, das Sie überprüfen möchten.
Tipps für Best Practices
- Bevorzugen Sie immer eingebaute Shellbefehle wie
Befehl -v
, Typ oder Hash über externe Versorgungsunternehmen wiewelche
Für eine bessere Kompatibilität und Leistung. - Das Umleiten der Ausgabe zu /dev /null (mit '> /dev /null 2> & 1') ist wichtig, um zu verhindern, dass unnötige Ausgabe Ihr Skript angezeigt oder stört.
- Wenn Sie nach mehreren Programmen überprüfen müssen, verwenden Sie eine Schleife und ein Array, um Ihr Skript prägnanter und wartbarer zu gestalten.
Abschluss
In diesem Artikel haben wir vier verschiedene Methoden erörtert, um zu überprüfen, ob ein Programm in einem Shell -Skript vorhanden ist. Während Befehl -v
ist die empfohlene und am weitesten verbreitete Methode, Typ, Hash und die Befehle können auch je nach Ihren Anforderungen und Systemumgebungen verwendet werden. Durch die Einbeziehung dieser Überprüfungen in Ihre Shell -Skripte können Sie sicherstellen.
- « So wählen Sie den besten Shebang (#!) für Ihre Shell -Skripte
- Benutzerfreundliche SSH-Clients für Windows mit erweiterter Funktionalität »