如何从Python

时间:2016-08-28 00:44:54

标签: python windows environment-variables

我被困了太久了。希望有人可以提供帮助。

我正在编写一个Python CLI应用程序,需要为当前命令提示会话(Windows)设置临时环境变量(PATH)。应用程序已使用here

的方法为所有将来的会话永久设置环境变量

要尝试为当前会话设置临时环境变量,我尝试了以下操作:

  • 使用os.environ设置环境变量
  • 使用使用临时文件的答案here。不幸的是,这可以直接从Cmd提示符运行,但不能从Python运行。
  • 使用SETsubprocess.call
  • 致电subprocess.check_call

该工具的用户需要这样做,这样他们就不必关闭命令提示符,以便利用我永久设置的环境变量。

我看到其他应用程序会这样做,但我不确定如何使用Python实现此目的。

1 个答案:

答案 0 :(得分:3)

蛮力但直截了当的是将您的作业作为stdout上的批处理脚本发出,并在现有解释器中执行该脚本(类似于bash中的source):

python myscript >%TEMP%\myscript-vars.bat
call %TEMP%\myscript-vars.bat
del %TEMP%\myscript-vars.bat