--Zusammenfassung zum Schreiben von case-Anweisungen in ShellScript-Bash
Das Folgende ist eine case-Anweisung, die einen bestimmten Prozess ausführt, wenn ein bestimmter Wert oder eine bestimmte Zeichenfolge in der Variablen enthalten ist.
Es wird davon ausgegangen, dass ein beliebiger Wert in der Variablen gespeichert ist.
#!/bin/bash
case ${Variable A.} in
"String B.")
Was Sie tun möchten, wenn die Zeichenfolge B in der Variablen A gespeichert ist;; "String C.") Was Sie tun möchten, wenn die Zeichenfolge C in der Variablen A gespeichert ist;; "String D.") Was Sie tun möchten, wenn die Zeichenfolge D in der Variablen A gespeichert ist;; *) Was Sie tun möchten, wenn Variable A etwas anderes als Zeichenfolge B, Zeichenfolge C und Zeichenfolge D enthält;; esac ```
Beschreiben Sie den Prozess zur Ausgabe unterschiedlicher Inhalte in Abhängigkeit von der in der Variablen number
gespeicherten Zeichenfolge.
Es wird angenommen, dass die Variable number
eine beliebige zweistellige Zahlenzeichenfolge enthält.
--Wenn 00 in der Variablen number
gespeichert ist, wird die Meldung" Führt den Vorgang aus, wenn 00 in der Variablennummer gespeichert ist "ausgegeben.
Wenn 20 in der Variablen "Nummer" gespeichert ist, wird die Meldung "Führt den Prozess aus, wenn 20 in der Variablen Nummer gespeichert ist" ausgegeben.
Wenn 30 in der Variablen number
gespeichert ist, wird" Prozess ausgeführt, wenn 30 in der Variablen number gespeichert ist. "Wird ausgegeben.
Wenn keine der 10, 20 und 30 in der Variablen "Nummer" gespeichert ist, werden "00, 20, 30 nicht in der Variablen Nummer" gespeichert. Wird ausgegeben.
Die Fallaussagen, die die oben genannten Bedingungen erfüllen, werden nachfolgend beschrieben.
#!/bin/bash
case ${number} in
"00")
echo "Führt den Prozess aus, wenn 00 in der Variablennummer gespeichert ist.";;
"20")
echo "Führt den Prozess aus, wenn 00 in der Variablennummer gespeichert ist.";;
"30")
echo "Führt den Prozess aus, wenn 00 in der Variablennummer gespeichert ist.";;
*)
echo "Die Variablennummer enthält keine 00, 20 oder 30."
esac
Recommended Posts