为什么 TEMP 环境变量会包含多个路径?

Jea*_*ett 2 windows path environment-variables

同事的%TEMP%环境变量具有以下值:

C:\Users\his.name\AppData\Local\Temp; C:\Program Files (x86)\MATLAB\MATLAB Compiler Runtime\v78\runtime\win32; C:\Program Files (x86)\MATLAB\MATLAB Compiler Runtime\v713\runtime\win32
Run Code Online (Sandbox Code Playgroud)

请注意它如何包含三个以分号分隔的路径,而人们通常希望它只包含一个路径(默认情况下,这三个路径中的第一个)。我们不知道这是怎么发生的。也许是 Matlab 安装程序……我们不知道。

现在,这给我带来了麻烦,因为我编写的并且整个公司都在使用的内部应用程序试图获取临时文件夹的路径,但由于 的值TEMP不是有效路径而感到困惑(因为我们可以看到它实际上是三个路径)。

问题是这样的:

  • 是否有理由让 TEMP 环境变量包含多个路径?
  • 这是受支持的行为还是错误?
  • 我的同事从其中删除这两个奇怪的 Matlab 路径TEMP并只保留第一个路径是否安全?

jdi*_*tal 6

看起来好像 Matlab 不小心附加到TEMP而不是PATH. 鉴于有很多程序假设TEMP是单个目录而不是列表,我建议删除额外的目录。

如果这些目录存在并包含 Matlab 可执行文件,您可能希望将它们添加到PATH.