Bash Pagina 45

De la Wiki Linux Advanced
Sari la navigare Sari la căutare

Comanda case în Bash

Comanda case în Bash este o structură de control care permite verificarea unei variabile împotriva mai multor valori posibile. Aceasta este utilă atunci când se dorește evaluarea unei variabile și executarea diferitelor comenzi în funcție de valoarea acesteia.

Sintaxa case

case variabilă in

   pattern1 )
       # comenzi
       ;;
   pattern2 )
       # comenzi
       ;;
   ...
   * )
       # comenzi pentru toate celelalte cazuri
       ;;

esac

Explicația sintaxei

- variabilă: variabila care va fi comparată cu modelele (patterns).
- pattern: valorile sau expresiile care sunt verificate. Pot include wildcard-uri (ex. * pentru a reprezenta orice).
- ;;: termină comanda pentru fiecare caz.
- *: un pattern special care se potrivește cu orice valoare, folosit ca un caz implicit.

Exemplu de utilizare a comenzii case =

#!/bin/bash
echo "Introduceti o zi a săptămânii:"
read zi
case $zi in
   "luni" )
       echo "Astăzi este luni."
       ;;
   "marti" )
       echo "Astăzi este marți."
       ;;
   "miercuri" )
       echo "Astăzi este miercuri."
       ;;
   "joi" )
       echo "Astăzi este joi."
       ;;
   "vineri" )
       echo "Astăzi este vineri."
       ;;
   "sâmbătă" | "duminică" )
       echo "Este weekend!"
       ;;
   * )
       echo "Zi necunoscută."
       ;;
esac

În acest exemplu, utilizatorul este întrebat despre ziua săptămânii. Comanda case va verifica valoarea introdusă și va executa comanda corespunzătoare în funcție de ziua specificată.

Utilizare practică

Comanda case este utilă pentru gestionarea mai multor opțiuni fără a necesita o serie lungă de instrucțiuni if-else. Aceasta simplifică citirea și întreținerea scripturilor, mai ales când sunt implicate multiple valori pentru evaluare. Este ideală pentru menu-uri, opțiuni de utilizator sau gestionarea codurilor de eroare.


Pagina anterioară | Următoarea pagină