J'essaye d'exécuter le script csh (qui crée ou met à jour les variables d'environnement) à partir de python mais les variables d'environnement ne se mettent pas à jour après retour au shell. Pourquoi? Comment puis-je le résoudre ?Les variables d'environnement ne sont pas mises à jour à partir de python
subprocess.call('script.csh',shell=True,executable="/bin/csh")
Ce n'est pas un problème Python. Les processus parents n'héritent pas de leurs enfants. Vous ne pouvez même pas le faire avec un script shell, sauf si vous "source" le script. –
J'utilise tcsh. Que voulez-vous dire ? Pouvez-vous me donner une solution de contournement? @PM 2Ring – Alex
La solution consiste à faire en sorte que le script shell définisse les variables d'environnement, puis à exécuter votre script Python, plutôt que de la manière dont vous essayez de le faire maintenant. Ou, vous pouvez les définir en Python en utilisant 'os.environ'. – kindall