Error : Failed to create temp directory "C:\Users\user\AppData\Local\Temp\conda-<RANDOM>\"

Error : Failed to create temp directory "C:\Users\user\AppData\Local\Temp\conda-<RANDOM>\"

当我尝试激活时 "conda activate tensorflow_cpu"

conda activate tensorflow_cpu

错误:无法创建临时目录 "C:\Users\user\AppData\Local\Temp\conda-\"

这是由于 conda 开发人员的错误。该错误是临时路径的名称带有空格,因此要解决这个问题,请重新分配环境变量 TEMP、TMP。 (对于 windows)

  1. 转到环境变量
  2. 在 "User Variables for " 部分查找 TEMP、TMP
  3. 双击 TMP 并在 "variable value" 中键入 "C:\conda_tmp"
  4. 对 TEMP 同样如此
  5. 关闭环境变量部分
  6. 重启anaconda提示,错误应该消失

我也遇到了这个错误。我按照说明更新 Spyder。当我打开 Anaconda Prompt (Anaconda3) 时出现以下错误:

Failed to create temp directory "C:\Users\username with spaces\AppData\Local\Temp\conda<RANDOM>\"

这导致在我尝试 'conda update anaconda' 时出现以下错误:

'conda' is not recognized as an internal or external command, operable program or batch file.

上述解决方案可能适用于 Anaconda,但我犹豫它对使用 TEMP 和 TMP 文件夹的其他应用程序的影响。因此,经过进一步研究,我遇到了一系列关于 GitHub https://github.com/conda/conda/issues/9757 的问题,这些问题指出根本原因是它无法处理 Windows 中包含空格的用户名,至少对我而言,不确定 OP,我的假设是@Hassan 掩盖了他的名字?

我的解决方法是打开 Anaconda Powershell 提示,它似乎在此提示中更新得很好。

通过编辑“C:\ProgramData\Anaconda3\Scripts\activate.bat”在第一个“@if”之前添加以下内容来做一些临时解决方法:

@set TEMP=C:/temp
@set TMP=C:/temp

这是为了避免像某些用户提到的那样通过更改 Env 变量来修改整个东西。

感谢赫普森 suggestion

看@Kurian Benoy 的回答似乎效果最好,但他的文件路径与我需要的不同。

本质上是在'C'中寻找'programdat'或'programdata'并寻找'condabin'

我找到的文件是“_conda_activate.bat”

并且基本上在第一个“@if”上方添加相同的行

@set TEMP=C:/temp
@set TMP=C:/temp

还要检查,打开 anaconda 提示符并使用

激活您的环境
conda activate <environment name>