user092
user092

Reputation: 437

set the environment variable using python

I basically want to set path for some of the variables using source . Scripting language python .subprocess.call call source /home/local/APPSCRIPT.env but not actually setting the environment variable.

sample script :

import os
from subprocess import Popen, PIPE
import subprocess

subcall=subprocess.call(['source /home/local/APPSCRIPT.env'],shell=True)

Please suggest how can i set the environment variable from APPSCRIPT.env

APPSCRIPT.env :

export xxx_SIZE=1
export yyy_USE=FALSE
export zzz_INCREMENTAL=FALSE

Upvotes: 0

Views: 391

Answers (1)

Daniel Roseman
Daniel Roseman

Reputation: 599956

You can't do this.

subprocess runs in, well, a subprocess. There's no way for any environment changes made in a subprocess to affect the calling process.

The only way to change environment variables for the current process in Python is to directly modify the sys.environ dictionary.

Upvotes: 2

Related Questions