[PYTHON] propagation variable d'environement

Fermé
lost_in _python - 7 janv. 2008 à 12:19
 lost_in _python - 7 janv. 2008 à 12:34
Bonjour,

J'ai un problème de variable d'environement sous Linux avec mes scripts Python.
J'ai créé deux scripts python qui sont appelés par des taches CRON. Dans le premier script j'affecte une valeur à une variable d'environement: MY_VAR. Si dans ce même script je fais un os.system('echo $MY_VAR') ca marche, confirmant l'écriture de la variable.
Dans mon deuxieme script je veux récupérer la valeur de cette variable. Malheureusement, je n'y arrive pas.
En parcourant le forum j'ai cru comprendre que les variables d'environnement crées ne le sont que dans la session en cours ce qui me pose un serieu soucis.

Avez vous une idée/piste?

J'ai pensé passer par un fichier mais mon script de lecture doit s'executer le plus rapidement possible, et puis c'est pas très "propre" comme solution.

Thx

2 réponses

sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 659
7 janv. 2008 à 12:23
C'est normal: Chaque nouveau programme "hérite" de l'environnement maître.
Il peut modifier son environnement, mais pas toucher à l'environnement des autres programmes.

La solution pourrait être de faire un os.system("export ...") afin exporter ta variable dans les autres environnements.

Autre solution: faire communiquer ces 2 scripts autrement que par des variables d'environnement: sockets, fichiers, base de données...
0
lost_in _python
7 janv. 2008 à 12:34
j'ai essayé de le os.system("export...") , le résultat est le même.
merci en tout cas, je vais essayé de passer par un autre canal de com.
0