GNU/Linux >> Tutoriels Linux >  >> Linux

Comment rendre les variables d'environnement « exportées » dans un script Shell ?

J'ai plusieurs comptes Amazon EC2 et je souhaite pouvoir changer rapidement de variables, telles que $EC2_HOME , à l'aide d'un script.

J'ai un script shell configuré comme ceci :

#!/bin/sh
export EC2_HOME=/home/me/.ec2
echo $EC2_HOME

Lorsque j'exécute le script, je sais que EC2_HOME est défini, mais je pensais qu'en utilisant export ferait que la variable resterait une fois le script terminé. Ce n'est pas le cas, car l'exécution de echo $EC_HOME n'affiche rien.

Je sais que cela doit être une connaissance très rudimentaire des scripts Linux, mais je ne le sais pas. J'ai essayé de chercher des questions connexes sans succès - donc mes excuses s'il s'agit d'un doublon.

Réponse acceptée :

Vous devez sourcer votre script, avec

. ./script

ou

source ./script

Linux
  1. Comment définir/créer des variables d'environnement et de shell sous Linux

  2. Comment Bash sait-il comment il est invoqué ?

  3. Comment rendre ce script sed plus rapide ?

  4. Comment savoir si j'exécute un shell imbriqué ?

  5. Comment désactiver un grand nombre de variables d'environnement

Comment définir et répertorier les variables d'environnement sous Linux

Comment créer des scripts shell

Comment stocker une commande Linux en tant que variable dans un script shell

Comment exécuter un script Shell en tant que service SystemD sous Linux

Comment définir et supprimer des variables d'environnement sous Linux

Comment exécuter une commande dans un script shell ?