【问题标题】:What did I do to cause environment variables to change when I start the Windows command prompt?当我启动 Windows 命令提示符时,我做了什么导致环境变量发生变化?
【发布时间】:2021-07-09 17:19:07
【问题描述】:

我使用的是 Windows 10 x64。我安装了 Anaconda3。如果我启动 C:\Windows\system32\cmd.exe 时没有运行其他任何东西(并且在我可以看到的背景中没有任何有趣的东西),则以下内容将添加到控制面板 UI 中不存在的 PATH 变量的前面:C:\Users\me\Anaconda3\condabin\.

我还看到添加了一些其他环境变量,这些变量在控制面板 UI 中也不存在:

CONDA_BAT=C:\Users\me\Anaconda3\condabin\conda.bat
CONDA_EXE=C:\Users\me\Anaconda3\Scripts\conda.exe
CONDA_SHLVL=0

当我在powershell中运行ls env:时,除了没有出现在控制面板UI中之外,上述环境变量也没有出现在输出中。

这可能是什么原因造成的?我想这可能是我设置的东西。我绝对喜欢它,但我不知道是什么原因导致它或如何重现它。有什么想法吗?

this question 中,回答者解释说这可能是由从其他启动器启动 cmd.exe 引起的;但是,这不是我要做的。

【问题讨论】:

  • something is added 不清楚。添加了什么?
  • 谢谢@buran,好点子。我将“某事”更改为“以下”;这有意义吗?
  • docs.anaconda.com/anaconda/install/windows 可能您选择在安装期间将 Anaconda 添加到 PATH(根据文档不推荐 - 请参阅第 8 条)。
  • 1. 检查both AutoRun registry entries in HKLM and HKCU 例如reg query "HKCU\Software\Microsoft\Command Processor"2. 检查用户路径 reg query HKCU\Environment /v Path 以及系统路径 reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path
  • @capet 谢谢;请取消删除您的答案;它比我的猜测更准确,因此它可以帮助其他人解决同样的问题……

标签: python windows command-line anaconda environment-variables


【解决方案1】:

Reddit 用户 4wh457 和 SO 用户 JosefZ 解决了我的问题。事实证明,我在 HKEY_CURRENT_USER\Software\Microsoft\Command Processor 中创建了一个注册表项,具有以下属性(在 RegCool 界面中):

  • NAME = 自动运行

  • 类型 = REG_EXPAND_SZ

  • 数据 = 如果存在 "C:\Users\me\Anaconda3\condabin\conda_hook.bat" "C:\Users\me\Anaconda3\condabin\conda_hook.bat"

根据JosefZ,AutoRun 键也可能在这里:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

(更多文档here)。

【讨论】:

    猜你喜欢
    • 2021-03-10
    • 2011-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多