如何删除不在默认 env 目录中的 anacnda 环境?
How to remove anacnda environments that's not in default env directories?
我在我选择的路径而不是 anaconda 的默认目录中创建了一个 conda 环境:
~$ conda create --prefix=/data/sfy_envs/test python=3.8
成功后conda中可见环境:
~$ conda info --envs
# conda environments:
#
base * /data/miniconda3
maskrcnn_sfy /data/miniconda3/envs/maskrcnn_sfy
torch16-sfy /data/miniconda3/envs/torch16-sfy
/data/sfy_envs/test
/data/sfy_envs/tf2-sfy
最后两个环境是使用 --prefix
参数创建的,没有名称。我可以通过直接参考它们的路径来激活它们:
~$ conda activate /data/sfy_envs/test
但我无法删除它们。例如要删除 test
,我试过:
~$ conda remove /data/sfy_envs/test
Collecting package metadata (repodata.json): done
Solving environment: failed
PackagesNotFoundError: The following packages are missing from the target environment:
- /data/sfy_envs/test
和
~$ conda remove -p /data/sfy_envs/test
CondaValueError: no package names supplied,
try "conda remove -h" for more details
这些都行不通,我知道为什么。
或者我可以手动删除环境目录,并从文件 .conda/environments.txt
中删除它们的路径吗?我不确定这是否是一种安全的治疗方法。
使用
conda env remove --prefix /data/sfy_envs/test
或
conda remove --prefix /data/sfy_envs/test --all
我在我选择的路径而不是 anaconda 的默认目录中创建了一个 conda 环境:
~$ conda create --prefix=/data/sfy_envs/test python=3.8
成功后conda中可见环境:
~$ conda info --envs
# conda environments:
#
base * /data/miniconda3
maskrcnn_sfy /data/miniconda3/envs/maskrcnn_sfy
torch16-sfy /data/miniconda3/envs/torch16-sfy
/data/sfy_envs/test
/data/sfy_envs/tf2-sfy
最后两个环境是使用 --prefix
参数创建的,没有名称。我可以通过直接参考它们的路径来激活它们:
~$ conda activate /data/sfy_envs/test
但我无法删除它们。例如要删除 test
,我试过:
~$ conda remove /data/sfy_envs/test
Collecting package metadata (repodata.json): done
Solving environment: failed
PackagesNotFoundError: The following packages are missing from the target environment:
- /data/sfy_envs/test
和
~$ conda remove -p /data/sfy_envs/test
CondaValueError: no package names supplied,
try "conda remove -h" for more details
这些都行不通,我知道为什么。
或者我可以手动删除环境目录,并从文件 .conda/environments.txt
中删除它们的路径吗?我不确定这是否是一种安全的治疗方法。
使用
conda env remove --prefix /data/sfy_envs/test
或
conda remove --prefix /data/sfy_envs/test --all