Commande export

Fermé
titi@fafa Messages postés 9 Date d'inscription mardi 21 mars 2017 Statut Membre Dernière intervention 26 mars 2017 - Modifié le 26 mars 2017 à 15:50
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 - 26 mars 2017 à 16:49
Bonjour,
qui peut m,expliquer la commande export????
par exemple dans:
export RASPA-DIR=${HOME}/Research/simulations
ou est le répertoire initial et ou est le répertoire d'arivee?? puisque export est transporter un fichiers d'un endroit a un autre.
merci pour votre aide.



1 réponse

mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
26 mars 2017 à 16:49
Bonjour,

Explication courte

La commande export permet de propager une variable "au dela" du programme ou du terminal dans laquelle elle a été créé.

Explication détaillée

Supposons que tu crées un script toto.sh et que tu déclares dedans une variable toto (sans export) et une variable titi (avec export). Si tu exécutes ton script dans ton shell, alors toto ne "vivra" que le temps du script toto.sh, tandis que titi subsistera même quand ton script sera terminé (tu peux le vérifier avec
echo $titi
).

export
est traditionnellement utilisé pour créer des variables d'environnement. Par exemple ici :
https://doc.ubuntu-fr.org/variables_d_environnement

... on t'explique qu'on peut ainsi initialiser
LC_ALL
qui pour certaines applications permet de configurer des paramètres linguistiques. Il existe d'autres variables d'environnement (voir résultat de la commande
env
pour voir les variables standards) mais rien n'empêche de les modifier ou de créer les siennes.

Mais personnellement, plutôt que de charcuter l'environnement, je préfère pour ma part lancer une commande en la préfixant par exemple comme ceci :

LC_ALL="C" ma_commande
.

Personnellement je préfère lancer une commande avec un environnement propre à elle même.

Dans ton cas précis

Ici tu crées une variable d'environnement RASPA_DIR qui est initialisé à partir de la variable HOME (qui contient par exemple
/home/toto
) auquel on a ajouté
/Research/simulation
s, ce qui l'initialise à
/home/toto/Research/simulation
.

La valeur assignée à RASPA_DIR peut par la suite être récupérée avec
$RASPA_DIR
ou encore
${RASPA_DIR}
.

Bonne chance
4