Bash Pagina 25: Diferență între versiuni

De la Wiki Linux Advanced
Sari la navigare Sari la căutare
(Pagină nouă: == 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** - `<nowiki>-e $filename </nowiki>` – Adevărat dacă fișierul indicat de `$filename` există. - `<nowiki> -d $dir...)
 
 
(Nu s-au afișat 2 versiuni intermediare efectuate de același utilizator)
Linia 3: Linia 3:
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.
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
'''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 (`=`).


#### Exemple de utilizare
'''Exemple de utilizare'''
- `<nowiki>[[ $str ]]</nowiki>` – Adevărat dacă șirul `$str` nu este gol.
- `<nowiki>[[ $str ]]</nowiki>` – Adevărat dacă șirul `$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"`.
Linia 28: Linia 28:
- `<nowiki>[[ -d $dirname ]]</nowiki>` – Adevărat dacă `$dirname` este un director.
- `<nowiki>[[ -d $dirname ]]</nowiki>` – Adevărat dacă `$dirname` este un director.


### Note importante
'''Note importante'''
- Respectarea spațiilor în jurul expresiei și a operatorilor este esențială pentru ca expresia să fie evaluată corect.
- Respectarea spațiilor în jurul expresiei și a operatorilor este esențială pentru ca expresia să fie evaluată corect.
- Expresia `<nowiki>[[ expresie ]]</nowiki>` î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.
- Expresia `<nowiki>[[ expresie ]]</nowiki>` î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.

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ă