En aquest tema, aprendrem sobre els operadors bàsics en Bash. Els operadors són símbols que indiquen a l'intèrpret de comandes que realitzi operacions específiques, com ara aritmètica, comparacions i assignacions. Aquests operadors són fonamentals per a la creació de scripts efectius i funcionals.
Tipus d'Operadors
- Operadors Aritmètics
Els operadors aritmètics s'utilitzen per realitzar operacions matemàtiques bàsiques.
Operador | Descripció | Exemple |
---|---|---|
+ |
Suma | expr 5 + 3 |
- |
Resta | expr 5 - 3 |
* |
Multiplicació | expr 5 \* 3 |
/ |
Divisió | expr 6 / 3 |
% |
Mòdul (residu) | expr 5 % 3 |
- Operadors de Comparació
Els operadors de comparació s'utilitzen per comparar dos valors.
Operador | Descripció | Exemple |
---|---|---|
-eq |
Igual a | [ 5 -eq 5 ] |
-ne |
No igual a | [ 5 -ne 3 ] |
-lt |
Menor que | [ 3 -lt 5 ] |
-le |
Menor o igual que | [ 3 -le 5 ] |
-gt |
Major que | [ 5 -gt 3 ] |
-ge |
Major o igual que | [ 5 -ge 3 ] |
- Operadors Lògics
Els operadors lògics s'utilitzen per combinar expressions condicionals.
Operador | Descripció | Exemple |
---|---|---|
&& |
AND lògic | [ 5 -eq 5 ] && [ 3 -lt 5 ] |
` | ` | |
! |
NOT lògic | [ ! 5 -eq 3 ] |
- Operadors d'Assignació
Els operadors d'assignació s'utilitzen per assignar valors a les variables.
Operador | Descripció | Exemple |
---|---|---|
= |
Assignació | a=5 |
+= |
Assignació amb suma | a+=3 |
-= |
Assignació amb resta | a-=2 |
*= |
Assignació amb multiplicació | a*=2 |
/= |
Assignació amb divisió | a/=2 |
Exemples Pràctics
Exemple 1: Operadors Aritmètics
#!/bin/bash # Assignació de valors a=10 b=5 # Suma sum=$((a + b)) echo "La suma de $a i $b és: $sum" # Resta diff=$((a - b)) echo "La resta de $a i $b és: $diff" # Multiplicació prod=$((a * b)) echo "La multiplicació de $a i $b és: $prod" # Divisió quot=$((a / b)) echo "La divisió de $a i $b és: $quot" # Mòdul mod=$((a % b)) echo "El mòdul de $a i $b és: $mod"
Exemple 2: Operadors de Comparació
#!/bin/bash # Assignació de valors a=10 b=5 # Comparació if [ $a -eq $b ]; then echo "$a és igual a $b" else echo "$a no és igual a $b" fi if [ $a -gt $b ]; then echo "$a és major que $b" else echo "$a no és major que $b" fi
Exemple 3: Operadors Lògics
#!/bin/bash # Assignació de valors a=10 b=5 c=15 # AND lògic if [ $a -gt $b ] && [ $a -lt $c ]; then echo "$a és major que $b i menor que $c" fi # OR lògic if [ $a -gt $b ] || [ $a -gt $c ]; then echo "$a és major que $b o major que $c" fi # NOT lògic if [ ! $a -lt $b ]; then echo "$a no és menor que $b" fi
Exemple 4: Operadors d'Assignació
#!/bin/bash # Assignació de valors a=10 # Assignació amb suma a+=5 echo "Després de sumar 5, a és: $a" # Assignació amb resta a-=3 echo "Després de restar 3, a és: $a" # Assignació amb multiplicació a*=2 echo "Després de multiplicar per 2, a és: $a" # Assignació amb divisió a/=4 echo "Després de dividir per 4, a és: $a"
Exercicis Pràctics
Exercici 1: Calculadora Bàsica
Crea un script que demani a l'usuari dos números i realitzi les operacions aritmètiques bàsiques (suma, resta, multiplicació, divisió i mòdul) amb aquests números.
Solució
#!/bin/bash # Demanar a l'usuari dos números echo "Introdueix el primer número:" read num1 echo "Introdueix el segon número:" read num2 # Realitzar operacions aritmètiques sum=$((num1 + num2)) diff=$((num1 - num2)) prod=$((num1 * num2)) quot=$((num1 / num2)) mod=$((num1 % num2)) # Mostrar els resultats echo "La suma de $num1 i $num2 és: $sum" echo "La resta de $num1 i $num2 és: $diff" echo "La multiplicació de $num1 i $num2 és: $prod" echo "La divisió de $num1 i $num2 és: $quot" echo "El mòdul de $num1 i $num2 és: $mod"
Exercici 2: Comparació de Números
Crea un script que demani a l'usuari dos números i compari si són iguals, si el primer és major que el segon, o si el primer és menor que el segon.
Solució
#!/bin/bash # Demanar a l'usuari dos números echo "Introdueix el primer número:" read num1 echo "Introdueix el segon número:" read num2 # Comparar els números if [ $num1 -eq $num2 ]; then echo "$num1 és igual a $num2" elif [ $num1 -gt $num2 ]; then echo "$num1 és major que $num2" else echo "$num1 és menor que $num2" fi
Resum
En aquesta secció, hem après sobre els operadors bàsics en Bash, incloent-hi operadors aritmètics, de comparació, lògics i d'assignació. Hem vist exemples pràctics de com utilitzar aquests operadors en scripts i hem practicat amb exercicis per reforçar els conceptes apresos. Amb aquests coneixements, estàs preparat per avançar cap a conceptes més complexos en la programació de scripts en Bash.
Curs de Programació en Bash
Mòdul 1: Introducció a Bash
- Què és Bash?
- Configuració del teu Entorn
- Navegació Bàsica per la Línia de Comandes
- Entenent la Shell
Mòdul 2: Comandes Bàsiques de Bash
- Operacions amb Fitxers i Directoris
- Comandes de Processament de Text
- Permisos i Propietat de Fitxers
- Redirecció i Piping
Mòdul 3: Conceptes Bàsics de Scripting
Mòdul 4: Scripting Intermedi
Mòdul 5: Tècniques Avançades de Scripting
- Operacions Avançades amb Fitxers
- Gestió de Processos
- Gestió d'Errors i Depuració
- Expressions Regulars
Mòdul 6: Treballant amb Eines Externes
Mòdul 7: Automatització i Programació
- Treballs Cron
- Automatització de Tasques
- Scripts de Còpia de Seguretat i Restauració
- Monitorització i Registre
Mòdul 8: Millors Pràctiques i Optimització
- Escriure Codi Llegible
- Optimització de Scripts en Bash
- Consideracions de Seguretat
- Control de Versions amb Git