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