Bash Pagina 25

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

Expresii condiționale

Expresiile condiționale sunt utilizate în scripturile shell pentru a verifica anumite condiții și a controla fluxul programului. Aceste expresii permit testarea fișierelor, directoarelor, șirurilor de caractere și a valorilor aritmetice.

Tipuri de teste condiționale

1. **Teste pe fișiere și directoare**

  - `[[ -e $filename ]]` – Adevărat dacă fișierul indicat de `$filename` există.
  - `[[ -d $dirname ]]` – Adevărat dacă `$dirname` este un director.
  

2. **Teste pe șiruri de caractere**

  - `[[ $str ]]` – Adevărat dacă `$str` nu este gol.
  - `[[ $str = "ceva" ]]` – Adevărat dacă `$str` este egal cu șirul `"ceva"`.
  

3. **Teste aritmetice**

  - Pot fi realizate cu operatori specifici precum `-lt`, `-le`, `-eq`, `-ne`, `-gt`, `-ge` pentru compararea valorilor numerice.

'Exemple de expresii condiționale

- **Sintaxa generală**: `[[ expresie ]]`

 - Spațiile din jurul expresiei sunt foarte importante pentru ca aceasta să fie interpretată corect de shell.
 - De asemenea, spațiile trebuie respectate și în jurul comutatoarelor (ex: `-e`) și al operatorului egal (`=`).

Exemple de utilizare - `[[ $str ]]` – Adevărat dacă șirul `$str` nu este gol. - `[[ $str = "ceva" ]]` – Adevărat dacă `$str` este egal cu șirul `"ceva"`. - `[[ -e $filename ]]` – Adevărat dacă fișierul `$filename` există. - `[[ -d $dirname ]]` – Adevărat dacă `$dirname` este un director.

Note importante - Respectarea spațiilor în jurul expresiei și a operatorilor este esențială pentru ca expresia să fie evaluată corect. - Expresia `[[ expresie ]]` întoarce întotdeauna adevărat dacă este scrisă corect și condiția specificată este îndeplinită, permițând astfel controlul precis al execuției în scripturi shell.


Pagina anterioară | Următoarea pagină