我用下面运行linux命令的python函数。我正在运行一个创建一些环境变量的脚本,然后通过使用下面的函数运行linux命令,将所有这些变量再次移植到脚本中;但是,似乎第一个命令的环境变量没有使用第二个命令记录。我想知道是因为每次调用它时os.popen
运行命令都在不同的shell中吗?如果是这样,我如何修改我的代码或使用哪个函数让所有东西在同一个shell中运行?
def execute(cmd):
'''Module to execute linux command'''
try:
proc = os.popen(cmd)
out = proc.read().strip()
return out
except Exception,err:
print "Exception occurred : %s"%str(err)
raise(str(err))