无论出于何种原因,在特定机器上,我的 cmd 进程不会从启动它的父进程继承其环境变量。相反,它恢复到“默认”环境设置,就像通过资源管理器启动一样。
演示这一点的一种简单方法是打开命令提示符,然后运行set Path=C:\Windows\System32\,然后cmd从同一提示符启动另一个进程。然后可以通过运行查看该变量set Path。
它应该是“C:\Windows\System32”(从启动过程继承)但在我的机器上它恢复到我的环境默认值。
什么可能导致这种情况?它似乎打破了关于环境变量如何工作的所有规则,它只影响这台机器。