1
我有两个剧本
1. demo.ksh
2. demo.py如何阅读变量从shell脚本出口,在python
在demo.ksh我正在导出变量
#!/bin/ksh
TEST="Hello"
export TEST
在我执行demo.ksh并试图读取出口值demo.py ..
import os
import subprocess
cmd='. demo.ksh' #I even tried 'demo.py' (no .)
subprocess(cmd,shell=True,stdout=subprocess.PIPE)
print(os.getenv('TEST'))
print(os.environ['TEST'])
我期待
Hello
Hello
但要
None
KeyError: 'TEST'
虽然这是一个简单的练习。我无法找到正确的解决方案,请帮我解决我的代码有什么问题。
为什么你不能使用脚本标准输出?使用环境变量会很困难,因为稍微难以获得另一个进程环境变量。你可以在这里阅读更多:https://stackoverflow.com/questions/5905574/how-to-get-the-environment-variables-of-a-subprocess-after-it-finishes-running –