Bash Pagina 25: Diferență între versiuni

De la Wiki Linux Advanced
Sari la navigare Sari la căutare
 
(Nu s-a afișat o versiune intermediară efectuată de același utilizator)
Linia 5: Linia 5:
'''Tipuri de teste condiționale'''
'''Tipuri de teste condiționale'''


1. **Teste pe fișiere și directoare**
1. ''Teste pe fișiere și directoare''
   - `<nowiki>[[ -e $filename ]]</nowiki>` – Adevărat dacă fișierul indicat de `$filename` există.
   - `<nowiki>[[ -e $filename ]]</nowiki>` – Adevărat dacă fișierul indicat de `$filename` există.
   - `<nowiki>[[ -d $dirname ]]</nowiki>` – Adevărat dacă `$dirname` este un director.
   - `<nowiki>[[ -d $dirname ]]</nowiki>` – Adevărat dacă `$dirname` este un director.
    
    
2. **Teste pe șiruri de caractere**
2. ''Teste pe șiruri de caractere''
   - `<nowiki>[[ $str ]]</nowiki>` – Adevărat dacă `$str` nu este gol.
   - `<nowiki>[[ $str ]]</nowiki>` – Adevărat dacă `$str` nu este gol.
   - `<nowiki>[[ $str = "ceva" ]]</nowiki>` – Adevărat dacă `$str` este egal cu șirul `"ceva"`.
   - `<nowiki>[[ $str = "ceva" ]]</nowiki>` – Adevărat dacă `$str` este egal cu șirul `"ceva"`.
    
    
3. **Teste aritmetice**
3. ''Teste aritmetice''
   - Pot fi realizate cu operatori specifici precum `-lt`, `-le`, `-eq`, `-ne`, `-gt`, `-ge` pentru compararea valorilor numerice.
   - Pot fi realizate cu operatori specifici precum `-lt`, `-le`, `-eq`, `-ne`, `-gt`, `-ge` pentru compararea valorilor numerice.


'''Exemple de expresii condiționale''
'''Exemple de expresii condiționale'''


- **Sintaxa generală**: `<nowiki>[[ expresie ]]</nowiki>`
- ''Sintaxa generală'': `<nowiki>[[ expresie ]]</nowiki>`
   - Spațiile din jurul expresiei sunt foarte importante pentru ca aceasta să fie interpretată corect de shell.
   - 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 (`=`).
   - De asemenea, spațiile trebuie respectate și în jurul comutatoarelor (ex: `-e`) și al operatorului egal (`=`).

Versiunea curentă din 27 octombrie 2024 08:54

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ă