GNU/Linux >> Tutoriels Linux >  >> Linux

Variable d'exportation bash

Présentation

Les variables de shell sont des paires clé-valeur utilisées pour stocker des données de configuration importantes pour le shell. Étant donné qu'une variable n'est qu'un pointeur vers une donnée, elle peut contenir une référence à n'importe quel type de données - un nom, un numéro, un nom de fichier ou même une autre variable.

Toutes les variables définies par l'utilisateur dans le shell bash sont locales par défaut. Cela signifie que les processus enfants du shell n'héritent pas des variables du shell. L'utilisateur doit exporter les variables pour les rendre disponibles aux processus enfants.

Ce didacticiel vous montrera comment exporter des variables Bash sous Linux à l'aide de export commande.

Prérequis

  • Accès au terminal/ligne de commande.
  • Le shell bash.

Que fait la commande d'exportation dans Bash ?

Les variables dans Bash sont créées à l'aide de la commande declare ou en tapant simplement la paire clé-valeur dans le shell. Par exemple, pour créer une variable nommée test , dont la valeur de chaîne est example , saisissez :

test="example"

Pour voir la valeur d'une variable, utilisez la commande echo :

echo $test

La valeur apparaît dans la sortie :

Cependant, la variable ainsi créée ne s'applique qu'à la session shell en cours. Pour tester cela, ouvrez un shell enfant en tapant :

bash

Utiliser echo pour vérifier la variable.

echo $test

La sortie est vide car la variable test a une valeur uniquement dans le shell parent. Une variable doit être exportée pour être utilisée dans les processus enfants.

L'exportation de variables est également importante pour les scripts Bash. L'exemple ci-dessous crée un script nommé test-script.sh qui affiche la valeur du test variable.

1. Créez le fichier à l'aide d'un éditeur de texte tel que nano :

nano test-script.sh

2. Tapez ce qui suit dans le fichier :

#!/bin/bash
echo $test

3. Enregistrez le fichier et quittez.

4. Modifiez les autorisations du fichier pour permettre son exécution :

chmod u+x test-script.sh

5. Exécutez le script :

./test-script.sh

Le script renvoie une sortie vide.

La sortie est vide car le script est exécuté dans un shell enfant qui s'ouvre automatiquement lors de l'exécution du script.

Comment exporter une variable Bash

La syntaxe de l'export la commande est simple :

export [variable-name]

L'exemple ci-dessous confirme que le test la variable existe même après l'utilisation de bash pour démarrer une nouvelle session shell.

Les scripts ont désormais également accès à la variable. Exécutez à nouveau le script créé précédemment.

./test-script.sh

Il affiche désormais correctement la valeur de test .

Fonctions d'exportation

Utilisez l'export commande pour exporter les fonctions bash.

1. Par exemple, créez une fonction bash appelée echoVar :

function echoVar 

2. La fonction appelle echo pour afficher la valeur du test variables :

{
echo "The value of the test variable is: "$test
}

3. La fonction peut maintenant être appelée par son nom pour afficher la valeur de la variable. Pour rendre la fonction disponible dans les processus enfants, tapez :

export -f echoVar

La fonction est désormais disponible dans les shells enfants.

Affichage de toutes les variables exportées

Lorsque l'export La commande est émise sans arguments, elle affiche la liste de toutes les variables. Pour exporter toutes les variables répertoriées vers les processus enfants, utilisez le -p option.

export -p

Les deux variables créées dans cet article se trouvent en bas de la sortie.

Pour annuler l'effet de export -p , utilisez le -n option.

export -n

Les variables sont à nouveau limitées à la session shell en cours.


Linux
  1. Bash Dynamic (variable) Noms des variables ?

  2. Définir une variable avec ou sans export

  3. Alias ​​avec variable dans bash

  4. passer grep dans une variable bash

  5. Exporter une variable de bash et l'utiliser en Python

Bash printf - Comment imprimer une variable dans Bash

Bash Shebang

Différence entre la définition de variables bash avec et sans exportation

Bash Scripting - Variables expliquées avec des exemples

Comment définir une variable d'environnement dans Bash

Explication de la commande d'exportation sous Linux