Opérations arithmétiques en Shell

ShellShellBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, vous apprendrez à effectuer des opérations arithmétiques de base en programmation Shell. Vous allez créer un script simple pour calculer le coût total d'un panier de fruits, en démontrant l'utilisation de variables et d'expressions arithmétiques en Bash. Ce laboratoire est conçu pour les débutants, nous allons donc expliquer chaque étape en détail.

Créer un nouveau script Bash

Commençons par créer un nouveau fichier de script Bash.

  1. Ouvrez votre terminal dans le WebIDE. Vous devriez voir une invite de commande qui pourrait ressembler à ceci : labex@ubuntu:~/project$.

  2. Nous allons créer notre script dans le répertoire project. Vous êtes déjà dans ce répertoire par défaut, mais assurons - nous en en utilisant la commande cd :

    cd ~/project

    Cette commande change le répertoire actuel en /home/labex/project.

  3. Maintenant, créons un nouveau fichier nommé fruit_basket.sh. Nous allons utiliser la commande touch, qui crée un fichier vide :

    touch fruit_basket.sh
  4. Ouvrez le fichier fruit_basket.sh dans l'éditeur du WebIDE. Vous pouvez le faire en cliquant sur le nom du fichier dans l'explorateur de fichiers à gauche du WebIDE.

  5. Chaque script Bash devrait commencer par une ligne "shebang". Cette ligne indique au système quel interpréteur utiliser pour exécuter le script. Ajoutez la ligne suivante au début du fichier :

    #!/bin/bash

    Cette ligne spécifie que le script doit être exécuté avec l'interpréteur Bash.

Définir des variables pour les coûts des fruits

Maintenant que nous avons notre fichier de script, définissons quelques variables pour stocker les coûts de différents fruits et du panier.

Ajoutez les lignes suivantes à votre fichier fruit_basket.sh :

#!/bin/bash

## Define costs
COST_PINEAPPLE=50
COST_BANANA=4
COST_WATERMELON=23
COST_BASKET=1

Décortiquons cela :

  • En Bash, nous n'avons pas besoin de déclarer les variables avant de les utiliser. Nous assignons simplement une valeur à un nom de variable.
  • Les noms de variables sont sensibles à la casse. Par convention, nous utilisons souvent des majuscules pour les constantes (valeurs qui ne changeront pas).
  • Il ne devrait pas y avoir d'espaces autour du signe = lors de l'affectation de valeurs.
  • Ces valeurs représentent le coût en centimes. Par exemple, COST_PINEAPPLE=50 signifie qu'une ananas coûte 50 centimes.
  • Nous n'avons pas besoin de spécifier un type de données. Bash traite ces valeurs comme des chaînes de caractères par défaut, mais les traitera comme des nombres lorsque nous effectuerons des opérations arithmétiques.

Calculer le coût total

Maintenant que nous avons défini nos coûts, calculons le coût total d'un panier de fruits contenant 1 ananas, 2 bananes et 3 pastèques.

Ajoutez la ligne suivante à votre fichier fruit_basket.sh :

#!/bin/bash

## Define costs
COST_PINEAPPLE=50
COST_BANANA=4
COST_WATERMELON=23
COST_BASKET=1

## Calculate total cost
TOTAL=$((COST_PINEAPPLE + (COST_BANANA * 2) + (COST_WATERMELON * 3) + COST_BASKET))

Examinons cette nouvelle ligne :

  • $(( )) est la syntaxe de Bash pour les opérations arithmétiques. Tout ce qui se trouve à l'intérieur de ces doubles parenthèses est traité comme une expression arithmétique.
  • À l'intérieur de l'expression arithmétique, nous n'avons pas besoin d'utiliser le symbole $ avant les noms de variables.
  • Nous effectuons plusieurs opérations :
    • COST_PINEAPPLE : Le coût d'un ananas
    • (COST_BANANA * 2) : Le coût de 2 bananes
    • (COST_WATERMELON * 3) : Le coût de 3 pastèques
    • COST_BASKET : Le coût du panier lui - même
  • Toutes ces valeurs sont additionnées, et le résultat est stocké dans la variable TOTAL.

Note : Bash ne gère que l'arithmétique entière. Si nous devions nous occuper de dollars et de cents, nous aurions besoin d'utiliser un outil comme bc pour l'arithmétique à virgule flottante.

Afficher le coût total

Pour voir le résultat de notre calcul, nous devons afficher le coût total. Ajoutez la ligne suivante à votre fichier fruit_basket.sh :

#!/bin/bash

## Define costs
COST_PINEAPPLE=50
COST_BANANA=4
COST_WATERMELON=23
COST_BASKET=1

## Calculate total cost
TOTAL=$((COST_PINEAPPLE + (COST_BANANA * 2) + (COST_WATERMELON * 3) + COST_BASKET))

## Display the total cost
echo "Total Cost is $TOTAL cents"

Décortiquons cette nouvelle ligne :

  • echo est une commande qui affiche du texte dans le terminal.
  • Le texte entre guillemets sera affiché tel quel, sauf pour la partie $TOTAL.
  • Lorsqu'un nom de variable est précédé de $ à l'intérieur d'une chaîne de caractères, Bash le remplace par la valeur de la variable. Cela s'appelle l'expansion de variable.
  • Donc, si TOTAL vaut 128, la sortie sera "Total Cost is 128 cents".

Rendre le script exécutable et l'exécuter

Maintenant que notre script est terminé, nous devons le rendre exécutable puis l'exécuter.

  1. Dans le terminal, rendez le script exécutable avec la commande chmod :

    chmod +x ~/project/fruit_basket.sh

    Cette commande change le mode du fichier, ajoutant la permission d'exécution (x) pour l'utilisateur.

  2. Maintenant, exécutons le script :

    ~/project/fruit_basket.sh

    Cette commande demande à Bash d'exécuter notre script. La partie ~/project/ spécifie le chemin vers notre script.

Vous devriez voir une sortie similaire à :

Total Cost is 128 cents

Cette sortie montre que le coût total de notre panier de fruits (1 ananas, 2 bananes, 3 pastèques et le panier lui - même) est de 128 centimes.

Résumé

Dans ce laboratoire, vous avez appris à effectuer des opérations arithmétiques en utilisant des opérateurs de base en programmation Shell. Vous avez créé un script Bash qui calcule le coût total d'un panier de fruits en définissant des variables pour les coûts individuels et en utilisant des expressions arithmétiques pour calculer le total. Vous avez également appris à rendre un script exécutable et à l'exécuter depuis la ligne de commande.

Points clés à retenir :

  1. Les scripts Bash commencent par une ligne shebang (#!/bin/bash).
  2. Les variables en Bash sont assignées sans espaces autour du signe =.
  3. Les opérations arithmétiques en Bash sont effectuées à l'intérieur de $(( )).
  4. La commande echo est utilisée pour afficher une sortie.
  5. Les scripts doivent être rendus exécutables avec chmod +x avant de pouvoir être exécutés.

Ces compétences constituent la base pour des tâches de script Shell plus complexes et peuvent être appliquées à diverses situations où vous devez effectuer des calculs dans vos scripts.