Comment utiliser les variables en bash

Comment utiliser les variables en bash
Pour ceux qui ont déjà effectué des tâches de programmation, ils connaissent les variables. Mais, pour ceux qui n'ont aucune connaissance de programmation, les variables sont utilisées pour stocker temporairement une information. Les variables sont définies dans un programme pour stocker des types spécifiques de données comme entier, flotteur et chaînes. Comme nous le savons, Bash est un langage faiblement dactylo. Si nous attribuons une valeur numérique à une variable, il le prendra comme un entier et dans le cas d'une valeur de texte, il se comportera comme une chaîne. Dans le script bash, les variables qui peuvent être définies dans un fichier bash ou à partir du terminal sont utilisées pour gérer et contrôler les actions de l'ensemble du programme bash. Les variables sont assez faciles à utiliser mais, si vous n'avez pas une bonne compréhension de leur fonctionnement, vous pouvez facilement vous causer des ennuis.

Dans cet article, nous discuterons d'une variété de méthodes différentes à travers lesquelles nous pouvons comprendre comment créer et utiliser des variables dans un script bash. Nous avons exécuté différents exemples liés aux variables sur Ubuntu 20.04 Distribution Linux. Commençons la démonstration.

Comment fonctionnent les variables?

Comme nous l'avons mentionné ci-dessus, une variable est un stockage temporaire pour une information.
Les deux actions suivantes que vous pouvez effectuer en utilisant une variable dans un script bash:

  • Définir une valeur particulière pour une variable.
  • Lire la valeur pour une variable.

Vous pouvez valoriser les variables en utilisant différentes manières. Le plus courant est de définir directement une valeur sur une variable ou vous pouvez définir sa valeur à la suite d'un traitement de commande ou d'un programme.
En lisant une variable, nous devons placer son nom avec le signe $ au début de cette variable que vous voudrez peut-être lire. Avant d'exécuter chaque ligne d'un script bash, il vérifie d'abord si des noms de variables sont présents. Il trouve chaque variable et remplace sa valeur par le nom de la variable. Ensuite, il démarre l'exécution d'une ligne de code particulière et répète le processus pour la ligne suivante.

Il y a des points importants sur la syntaxe que vous devez suivre lors de la lecture d'une variable:

  • N'utilisez aucun caractère spécial ou pancarte $ lors de la définition d'une valeur variable
  • Lorsque vous lisez une variable, placez un signe $ au début du nom de la variable
  • Certains programmeurs écrivent des noms de variables dans toutes les majuscules, mais nous pouvons attribuer des noms en fonction de notre préférence. Ils peuvent être tous majuscules, minuscules ou un mélange des deux.

Vous pouvez définir et lire les données d'une variable via le terminal de la manière suivante: Tout d'abord, vous devez ouvrir l'application de terminal sur votre système. Ouvrez le terminal à l'aide du raccourci du clavier en appuyant sur 'Ctrl + Alt + T'. Ou vous pouvez l'ouvrir via votre barre de recherche de lanceur d'applications. Cliquez sur «Activités», puis tapez «Terminal» dans la barre de recherche qui sera affichée sur le bureau et appuyez sur «Entrée». Vous verrez la sortie suivante sur votre écran de terminal. Cliquez sur l'icône du terminal et lancez-la.

La syntaxe de base de la déclaration variable; Définition de la valeur variable

Comme nous l'avons discuté plus tôt dans Bash, nous n'avons pas besoin de définir le type de variable lorsque vous déclarez une variable. Vous n'avez pas à déclarer une variable. Attribuez simplement une valeur à une variable pour la référencer.

variable_name = valeur

Par exemple, nous voulons attribuer une valeur comme la chaîne «bienvenue à la programmation bash: utilisation de variables» à une variable nommée «var_str». En utilisant la commande suivante, vous pouvez effectuer cette tâche:

var_str = "Bienvenue à la programmation bash: utilisation des variables"

Contrairement à la plupart des autres langages de programmation modernes, Bash offre une syntaxe difficile pour définir des variables. Vous devez savoir qu'il n'est pas nécessaire d'ajouter un espace entre le nom de la variable, le symbole égal et la valeur que vous souhaitez attribuer. Sinon, il lancera un message d'erreur.

my_var = "Dites bonjour"

Dans la commande ci-dessus, vous recevrez une erreur due à l'espace après le signe égal et la valeur attribuée.

Exemple: Déclaration et lecture d'une chaîne en utilisant la variable

Prenons un exemple dans lequel nous stockons une chaîne «Règles: comment utiliser une variable dans bash», puis la valeur variable est récupérée via la commande echo en ajoutant le signe «$» au début du nom de la variable. La commande suivante vous devez suivre pour afficher une chaîne sur le terminal:

$ my_var = "Règles: comment utiliser la variable dans bash"
$ echo $ my_var

Vous verrez la sortie suivante sur la fenêtre du terminal:

Si vous n'utilisez pas le signe «$», la sortie du programme affichera des résultats différents et que vous n'obtiendrez peut-être pas la sortie requise. Voyons vous montrer l'exemple suivant:

$ my_var = "Règles: comment utiliser une variable dans bash"
$ echo my_var

Dans la commande ci-dessus, le signe '$' est supprimé avec le nom de la variable 'écho my_var'. Vous ne récupérerez donc que le nom de la variable sur la sortie.

Noms variables valides

Vous pouvez attribuer des noms de variables Contrôles et séquences de caractères alphanumériques.
Le nom de la variable doit commencer par des caractères alphanumériques ou un soulignement. Il ne doit pas être démarré avec un numéro ou un chiffre.

Exemples de noms de variables

  • Bonjour
  • n4
  • numéro_my_array
  • _NUM

Combinant deux variables

Vous n'avez besoin d'utiliser aucun opérateur pour combiner deux ou plusieurs variables de sortie comme d'autres langues.

Exemple

Par exemple, nous utilisons ici un $ var1 dans lequel la valeur de la chaîne à stocker, et $ var2 est utilisé pour stocker n'importe quel entier ou une valeur numérique. Exécutez les commandes suivantes sur le terminal qui combinera la sortie var1 et var2.

$ var1 = "Le prix de la maison est $"
$ var2 = 50
$ echo $ var1 $ var2

La sortie suivante sera affichée sur le terminal après avoir exécuté les commandes susmentionnées:

Note importante:

La sortie peut être imprimée sans utiliser de devis mais, si vous souhaitez utiliser des citations, alors vous devez utiliser des doubles quotis.

Concaténer deux variables

Des devis doubles sont utilisés pour lire la valeur de la variable en bash.

Exemple

Prenons un exemple de la concaténation de deux variables. Nous avons utilisé des citations doubles pour une déclaration d'écho et une seule citation pour une autre déclaration d'écho. Nous avons exécuté les commandes suivantes sur le terminal que vous pouvez vérifier la sortie mentionnée ci-dessous:

$ var = "Concaténation variable dans"
$ echo "$ var programmation"
$ echo '$ var programmation'

Dans la capture d'écran ci-dessus, vous pouvez observer que lorsque vous avez utilisé les doubles devis avec la commande echo, il lit la valeur variable. Dans le cas d'un seul devis, il n'est pas en mesure de lire la valeur variable.

Faire des opérations arithmétiques en utilisant des variables

En programmation bash, nous pouvons effectuer différentes tâches arithmétiques comme d'autres langages de programmation. Il prend des valeurs numériques ou des entiers comme des chaînes. Cependant, vous ne pouvez pas effectuer de fonctionnement arithmétique en utilisant juste des expressions simples normales. Il ne combine que les valeurs numériques dans ce cas. En utilisant les supports de démarrage et de fin avec l'expression, vous pouvez faire les opérations arithmétiques.

Exemple

Par exemple, nous avons une variable n dans laquelle 50 valeurs numériques sont stockées. Nous voulons ajouter plus 20 en variable, en utilisant la commande suivante, vous pouvez effectuer cette opération:

$ n = 50
$ echo $ n
$ echo $ n + 20
$ ((n = n + 20))
$ echo $ n

Dans la commande ci-dessus, vous avez vu la commande $ n + 20 combiner simplement deux valeurs. Il ne vous donne pas la sortie souhaitée. En ajoutant des supports initiaux ((n = n + 20)), vous avez effectué l'opération arithmétique avec le résultat 70.

Faire un fonctionnement arithmétique en utilisant la commande bc

L'autre méthode pour faire des opérations arithmétiques est l'utilisation de la commande BC dans Bash.

Exemple

En utilisant les commandes suivantes sur le terminal, vous pouvez effectuer des tâches arithmétiques:

$ n = 65
$ echo $ n / 10 | avant JC

Dans le code ci-dessus, vous pouvez voir que lorsque vous avez utilisé la commande BC pour effectuer une division d'opération arithmétique, il a omis les parties fractionnaires du résultat.

$ n = 65
$ echo $ n / 10 | BC -L

Lorsque vous avez utilisé l'option -L avec la commande BS, vous obtenez également la valeur fractionnaire en conséquence.

Utilisation de variables dans un fichier de script bash

Vous pouvez également initialiser une variable dans un script bash en utilisant la même méthode qui est mentionnée dans les exemples ci-dessus. Cependant, vous devez créer un fichier de script bash. Pour ce faire, créez un fichier à l'aide d'un éditeur de texte et collez le code suivant dedans. Maintenant, enregistrez-le avec .bash ou .extension SH.

Exemple

Dans le script suivant, nous avons déclaré deux variables, l'une est une chaîne et l'autre a des valeurs numériques. Nous voulons soustraire 10 du numéro donné. Exécutez le script suivant à cet effet:

#!/ bac / bash
Str = "Comment utiliser les variables dans le script bash"
# Afficher la valeur de la chaîne
Echo $ str
num = 100
# Soustrait 10 valeurs numériques d'une variable num = 100
((résultat = $ num-10))
# Afficher la sortie numérique
Echo $ Résultat

Vous verrez la sortie suivante sur le terminal:

Utilisation de variables locales et globales

Comme d'autres langages de programmation, vous pouvez définir des variables locales et globales dans la programmation bash. Élaborons le concept de variables locales et globales avec un exemple.

Exemple

Par exemple, dans le script de bash suivant, nous avons utilisé des variables locales et globales. Le script suivant a une variable globale nommée «num» et deux variables locales sont utilisées nommées «num» et «m».

Nous voulons ajouter deux valeurs variables en utilisant une fonction ajout (). Lorsque cette fonction appellera la valeur de la variable locale «num» est prise pour le calcul, mais le nombre qui est une variable globale reste inchangé. Lorsque nous déclarerons les variables locales, nous devons utiliser un mot-clé local avec le nom de la variable.

#!/ bac / bash
num = 10
fonction de fonction ()

num local = 10
M local m = 10
((num = num + m))
echo $ num

ajout
echo $ num

Exécutez le script ci-dessus à l'aide de la commande suivante:

$ bash addfun.shot

La sortie suivante sera affichée sur le terminal après avoir exécuté le script ci-dessus:

Comment utiliser les variables de tableau en bash

Les tableaux sont utilisés pour stocker la liste des données. Par conséquent, dans le script bash, nous pouvons également utiliser des variables de tableau pour stocker des données.

Exemple

Prenons un exemple qui vous montrera comment utiliser les variables du tableau dans le script bash. Les éléments des tableaux sont séparés par SPEC dans la programmation bash. Ici, nous avons pris un tableau de 5 éléments. Nous n'avons aucune fonction prédéfinie pour compter les éléments du tableau total. Dans Bash, # avec * ou '@' est utilisé pour compter le nombre total d'éléments de la table. Tous les éléments du tableau sont indiqués par * signe. Nous avons utilisé une boucle pour itérer dans les éléments du tableau. Ensuite, le script lira les valeurs du tableau et avec une clé et imprimera la sortie sur le terminal.

#!/ bac / bash
my_arr = (Centos Ubuntu Debian Linux Mint Solaris MacOS Windows)
# compter le nombre total d'éléments dans un tableau
total = $ # my_arr [*]
Echo "Total des éléments du tableau sont: $ total"
#Display la valeur de chaque élément d'un tableau
Echo "Valeurs des éléments du tableau:"
pour val dans $ my_arr [*]
faire
printf "% s \ n" $ val
fait
#Display la valeur d'élément de chaque tableau avec une clé
Echo "Valeurs des éléments de tableau avec la clé:"
pour la clé dans $ !my_arr [*]
faire
printf "% 4d:% s \ n" $ key $ my_arr [$ key]
fait

La sortie suivante sera affichée sur le terminal:

Nous résumons un point clé important sur les variables de la programmation bash:

  • Déclaration variable
variable_name = valeur

Tout en définissant une valeur pour une variable. Vous devez vous rappeler que pas besoin d'ajouter des espaces de chaque côté du signe =.

  • Citations »'
  • Utilisez des devis doubles pour une substitution variable, vous n'utiliserez pas un seul devis pour lire une variable.
  • Use ((n = n + 10)) Utilisez les supports initiaux pour les opérations arithmétiques ou vous pouvez utiliser la commande BC.
  • Éléments de la table Vous pouvez compter en utilisant # avec * signe.

Conclusion

Dans cet article, nous avons expliqué un concept clair sur les variables bash que nous pouvons déclarer et lire les valeurs des variables dans la programmation bash. Si vous exercez les exemples mentionnés ci-dessus, vous pourrez faire face aux variables plus efficacement dans les scripts bash. Nous avons exécuté diverses commandes sur le terminal et nous avons également exécuté dans un script bash. Les commandes bash sur la ligne de commande fonctionnent exactement de la même manière que dans un script bash, mais lorsque vous avez un grand morceau de code, vous pouvez le gérer dans un fichier de script plutôt que d'exécuter un par un sur le terminal.