【发布时间】:2015-10-09 10:44:20
【问题描述】:
是否可以创建一个 shell 对象并在执行命令后不丢失数据的情况下对其进行操作?
from subprocess import *
sh.Popen('/bin/bash', stdout=PIPE)
sh.communicate('source /path/to/file/env.sh')
print os.getenv('ENV_VAR1')
ENV_VAR1 应该在采购/path/to/file/env.sh 之后可用,但它不是。
这部分代码没有按预期工作,我怎样才能让它工作?
这是另一个效果不佳的尝试
os.system('source env.sh; echo $ENV_VAR1') #Prints out correct value
os.system('echo $ENV_VAR1') #Prints nothing
【问题讨论】: