Bash Pagina 29
Și, Sau, Nu în Expresii Condiționate
Expresiile condiționate din scripturile shell permit combinarea mai multor condiții cu operatorii și (&&), sau (||), și nu (!). Acești operatori facilitează verificări complexe într-o singură expresie.
Utilizarea lui ! pentru a nega o condiție
- Operatorul ! este folosit pentru a inversa rezultatul unei expresii condiționate.
Exemplu
if [[ ! -e $fisier ]]; then echo "Fișierul $fisier nu există." fi
Explicație: [[ ! -e $fisier ]] va fi adevărat dacă $fisier nu există.
Notă: Este important să păstrezi spațiile în jurul operatorului ! pentru a evita erorile de sintaxă.
Utilizarea lui && pentru și
Operatorul && este utilizat pentru a verifica dacă ambele condiții sunt adevărate.
Exemplu
if $# -eq 1 && $1 = "foo" ; then echo "Exact un argument cu valoarea 'foo' a fost furnizat." fi
Explicație: [[ $# -eq 1 && $1 = "foo" ]] va fi adevărat doar dacă scriptul a fost apelat cu un singur argument și valoarea acestuia este foo.
Utilizarea lui || pentru sau
Operatorul || este utilizat pentru a verifica dacă cel puțin una dintre condiții este adevărată.
Exemplu
if | $b ; then echo "Variabila $a sau variabila $b (sau ambele) conțin o valoare." fi
Explicație: [[ $a || $b ]] va fi adevărat dacă $a sau $b (sau ambele) au o valoare nenulă.
Recomandări
Spații importante: Menține spațiile în jurul operatorilor (!, &&, ||) pentru a evita erori de sintaxă.
Acești operatori sunt esențiali pentru a construi logici condiționate complexe în Bash și a asigura un control eficient asupra execuției scriptului.