对于以下 python 脚本:
import os
os.system('PYTHONPATH=\user\...')
os.system('export PYTHONPATH')
....
执行此脚本后,我们是否可以将 PYTHONPATH
变量“导出”到 shell?
最佳答案
不,这是不可能的。当Python进程启动时,它会获得自己的环境副本,从父shell复制。 Python进程只能修改私有(private)副本,并且更改不会传播回父进程。
如果您想做这样的事情,最好的方法是打印执行所需的环境变量更改所需的 shell 命令,例如
print "export PYTHONPATH=$PYTHONPATH:..."
并使用运行脚本
eval "$(python myscript.py)"
关于python - 我们可以将python脚本修改的环境变量传递给 shell 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8101352/