Bash Pagina 64
Sari la navigare
Sari la căutare
Getopts 1
Utilitate: getopts ajută la analizarea listelor de argumente în scripturile Bash.
Formatul opțiunilor: Se așteaptă ca opțiunile să înceapă cu o liniuță (-x).
Opțiuni cu argumente: Permite opțiuni care iau un argument (de exemplu, fișier -f).
Sintaxa getopts
getopts optstring nume
Parametrii optstring:
O listă de opțiuni așteptate. De exemplu, ab va permite scriptului să gestioneze opțiunea -a și/sau -b. Adăugați : la opțiunile care preiau un argument.
De exemplu, a: va face ca -a să accepte un argument, dar -b nu.
nume:
Numele unei variabile. De fiecare dată când apelați getopts, următoarea opțiune va fi plasată în $nume.
Comportamentul getopts
getopts returnează false atunci când nu mai sunt disponibile opțiuni de procesat.
Exemplu de utilizare getops
#!/bin/bash
# Inițializăm variabilele
file=""
verbose=0
# Analizăm opțiunile
while getopts "vf:" opt; do
case $opt in
v) # Opțiunea -v pentru verbose
verbose=1
;;
f) # Opțiunea -f pentru a specifica un fișier
file="$OPTARG"
;;
\?) # Opțiune invalidă
echo "Opțiune invalidă: -$OPTARG" >&2
exit 1
;;
esac
done
# Verificăm dacă a fost specificat un fișier
if [ -z "$file" ]; then
echo "Utilizare: $0 -f <fișier> [-v]"
exit 1
fi
# Afișăm informații
if [ $verbose -eq 1 ]; then
echo "Mod verbose activat."
fi
echo "Fișier specificat: $file"
# Restul scriptului ar putea folosi variabila $file
# pentru a efectua acțiuni pe fișierul specificat.
Descrierea scriptului:
- Scriptul folosește getopts pentru a analiza opțiunile -v (verbose) și -f (fișier).
- Când se folosește -f, scriptul așteaptă un argument, care este stocat în variabila file.
- Opțiunea -v activează un mod detaliat de afișare (verbose).
- La sfârșit, scriptul verifică dacă a fost specificat un fișier și afișează informațiile corespunzătoare.
Utilizare:
./script.sh -f document.txt -v