Überprüfen Sie die Anzahl der Argumente im Bash-Skript

Es ist wichtig, die Gesamtzahl der Argumente zu zählen, die für verschiedene Zwecke an das Skript übergeben werden, z. B. zur Fehlerbehandlung, zur Bereitstellung von Nachrichten basierend auf der Anzahl der Argumente und zur Unterstützung des Benutzers bei der Übergabe der korrekten Anzahl von Argumenten. Die Gesamtzahl der Argumente kann in Bash auf zwei Arten gezählt werden. Einer verwendet „$#“ und ein anderer verwendet eine Schleife. In diesem Tutorial werden die Methoden zur Überprüfung der Anzahl der Argumente und zur Verwendung dieses Werts für verschiedene Zwecke gezeigt.

Verschiedene Verwendungsmöglichkeiten für die Überprüfung der Anzahl von Argumenten

Die Verwendungsmöglichkeiten der Überprüfung der Anzahl der Argumente werden in diesem Teil des Tutorials anhand mehrerer Beispiele gezeigt.

Beispiel 1: Zählen Sie die Gesamtzahl der Argumente mit „$#“

Erstellen Sie eine Bash-Datei mit dem folgenden Skript, das die Gesamtzahl der Argumente zählt und die Argumentwerte mithilfe einer „for“-Schleife ausgibt.

#!/bin/bash

#Speichern Sie die Anzahl der Argumente

len=$#

echo „Gesamtzahl der Argumente: $len“

echo „Argumentwerte sind:“

#Drucken Sie die Argumentwerte

für Wert in $@

Tun

echo $val

Erledigt

Die folgende Ausgabe erscheint nach der Ausführung des Skripts mit den Argumentwerten 67, 34 und 12:

Beispiel 2: Drucken Sie die Argumentwerte basierend auf der Argumentlänge

Erstellen Sie eine Bash-Datei mit dem folgenden Skript, das die Gesamtzahl der Argumente zählt und die Argumentwerte basierend auf der Anzahl der Argumente ausgibt. Wenn dem Skript kein Argument übergeben wird, wird eine Fehlermeldung ausgegeben.

#!/bin/bash

#Speichern Sie die Anzahl der Argumente

len=$#

#Überprüfen Sie die Gesamtzahl der Argumente

Wenn [ $len -eq 0 ]; Dann

echo „Kein Argument angegeben“

fi

#Initialisieren Sie den Zähler

Zähler=0

#Argumentwert basierend auf dem Zählerwert ausgeben

while (( $counter < $len ))TunWenn [ $counter -lt 1 ]; Dannecho $1elif [ $counter -lt 2 ]; Dannecho $2elif [ $counter -lt 3 ]; Dannecho $3fi((Zähler++))Erledigt

Das Skript wird in der Ausgabe viermal ausgeführt. Die Fehlermeldung wird ausgegeben, wenn kein Argument angegeben wird. Die Argumentwerte werden gedruckt, wenn ein, zwei und drei Argumentwerte angegeben werden.

Beispiel 3: Berechnen Sie den Durchschnitt der Argumentwerte

Erstellen Sie mit dem folgenden Skript eine Bash-Datei, die die Gesamtzahl der Argumente zählt und den Durchschnittswert von fünf Argumentwerten ausgibt. Zur Berechnung des Durchschnittswertes wird im Skript der Befehl „bc“ verwendet. Wenn dem Skript kein Argument übergeben wird, wird eine Fehlermeldung ausgegeben.

#!/bin/bash

#Überprüfen Sie die Gesamtzahl der Argumente

Wenn [ $# -eq 5 ]; Dann

#Berechnen Sie die Summe der Argumentwerte

Summe=$(($1+$2+$3+$4+$5))

#Berechnen Sie die Durchschnittswerte

avg=$(($sum/5 | bc -l))

#Drucken Sie die Durchschnittswerte und die Argumentwerte

echo „Argumentwerte sind: $1 $2 $3 $4 $5“

echo „Durchschnittswert: $avg“

anders

#Fehlermeldung drucken

echo „Die Gesamtzahl der Argumente muss 5 sein.“

fi

Das Skript wird in der Ausgabe zweimal ausgeführt. Die Fehlermeldung wird ausgegeben, wenn kein Argument angegeben wird. Der Durchschnitt der Argumentwerte wird gedruckt, wenn fünf Argumentwerte angegeben werden.

Beispiel 4: Drucken Sie die Fehlermeldung basierend auf den Argumentwerten

Erstellen Sie eine Bash-Datei mit dem folgenden Skript, das basierend auf der „if“-Bedingung eine der drei Nachrichten druckt. Die erste „Wenn“-Bedingung prüft, ob die Anzahl der Argumente 2 beträgt oder nicht. Die zweite „Wenn“-Bedingung prüft, ob die Länge des Argumentwerts kleiner als 5 ist oder nicht. Die dritte „Wenn“-Bedingung prüft, ob das zweite Argument positiv ist oder nicht.

#!/bin/bash

#Lesen Sie die Argumentwerte

Name=$1

Preis = 2 $

#Zählen Sie die Länge des zweiten Arguments

len=${#name}

#Überprüfen Sie die Gesamtzahl der Argumente

Wenn [ $# -ne 2 ]; Dann

echo „Die Gesamtzahl der Argumente muss 2 sein.“

Ausfahrt

#Überprüfen Sie die Länge des ersten Arguments

elif [ $len -lt 5 ]; Dann

echo „Der Produktname muss mindestens 5 Zeichen lang sein.“

Ausfahrt

#Überprüfen Sie den Wert des zweiten Arguments

elif [ $2 -lt 0 ]; Dann

echo „Der Preiswert muss positiv sein.“

Ausfahrt

fi

#Drucken Sie die Argumentwerte

echo „Der Preis von $name beträgt TK. $price“

Das Skript wird in der Ausgabe viermal ausgeführt. Die Fehlermeldung „Gesamtzahl der Argumente muss 2 sein“ wird ausgegeben, wenn kein Argument angegeben wird. Die Fehlermeldung „Der Produktname muss mindestens 5 Zeichen lang sein“ wird ausgegeben, wenn die Länge des ersten Arguments weniger als fünf Zeichen beträgt. Die Fehlermeldung „Der Preiswert muss positiv sein“ wird ausgegeben, wenn das zweite Argument negativ ist.

Abschluss

Die Verwendung der Anzahl der Argumente im Bash-Skript für verschiedene Zwecke wird in diesem Tutorial anhand mehrerer Beispiele gezeigt, um den neuen Bash-Benutzern zu helfen.

Kommentar verfassen

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

Nach oben scrollen