python - python 脚本可以持续更改 Windows 环境变量吗? (优雅地)

标签 python windows scripting batch-file

在我的 previous question 之后, 是否可以制作一个持续更改 Windows 环境变量的 Python 脚本?

一旦 python 解释器终止,对 os.environ 的更改就不会持续存在。如果我在 UNIX 上编写脚本,我可能会这样做:

set foo=`myscript.py`

但是,唉,cmd.exe 没有任何像 sh 的反引号行为那样工作的东西。我看到了一个非常冗长的解决方案......它不是很确定我们可以改进它:

for /f "tokens=1* delims=" %%a in ('python  ..\myscript.py') do set path=%path%;%%a

Microsoft 的头脑肯定有比这更好的解决方案!

注意:与this question 完全相同.

最佳答案

您可能想尝试 Python Win32 Extensions ,由 Mark Hammond 开发,包含在 ActivePython 中(或者可以单独安装)。您可以在 Hammond's and Robinson's book 中了解如何执行许多与 Windows 相关的任务。 .

使用 PyWin32 访问窗口 COM 对象,Python 程序可以使用 Environment Property WScript.Shell 对象 - 环境变量的集合。

关于python - python 脚本可以持续更改 Windows 环境变量吗? (优雅地),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/488449/

相关文章:

python - Sklearn逻辑回归,绘制概率曲线图

python - 无法将变量与 while 循环中的输入进行比较

windows - 如何让Internet Explorer在某个域自动登录

windows - 如何使用 javapackager 生成模块化 Java 应用程序的可执行文件?

PHP while 循环加 2

linux - 使用 AWK 查找排除某些行的列的平均值

python - 为什么元组可以包含可变项?

python - 如何使用 pyplot 在线绘图?

php - 使用 PHP 在前台执行视频播放器

Bash 脚本 : How can I patch files?(在文件的给定位置写入给定的字符串)