如何删除仅在一个conda环境中使用的软件包?

时间:2020-08-26 00:25:41

标签: python anaconda conda

我正在尝试使用以下命令删除环境foo:

conda remove -n foo --all --dry-run

表明这些软件包将被删除:

The following packages will be REMOVED:

certifi:        2016.2.28-py27_0
mkl:            2017.0.3-0
numpy:          1.13.1-py27_0
openssl:        1.0.2l-vc9_0       [vc9]
pip:            9.0.1-py27_1
python:         2.7.13-1
scipy:          0.19.1-np113py27_0
setuptools:     36.4.0-py27_1
sqlite:         3.13.0-vc9_1       [vc9]
tk:             8.5.18-vc9_0       [vc9]
vs2008_runtime: 9.00.30729.5054-0
wheel:          0.29.0-py27_0
wincertstore:   0.2-py27_0
zlib:           1.2.11-vc9_0       [vc9]


DryRunExit: Dry run exiting

但是我还有另一个重要的环境栏,我要保留其软件包(以及可能与之共享软件包的其他环境):

C:\WINDOWS\system32>conda remove -n bar --all --dry-run

Remove all packages in environment C:\Users\blah\Anaconda3\envs\bar:


## Package Plan ##

  environment location: C:\Users\blah\Anaconda3\envs\bar


The following packages will be REMOVED:

backports:              1.0-py27_0
beautifulsoup4:         4.5.1-py27_0
boto:                   2.43.0-py27_0
bz2file:                0.98-py27_0
click:                  6.6-py27_0
configparser:           3.5.0-py27_0
curl:                   7.49.0-vc9_0       [vc9]
cycler:                 0.10.0-py27_0
django:                 1.10.3-py27_0
flask:                  0.11.1-py27_0
gensim:                 0.12.4-np111py27_0
icu:                    57.1-vc9_0         [vc9]
itsdangerous:           0.24-py27_0
jinja2:                 2.8-py27_1
jpeg:                   8d-vc9_2           [vc9]
libpng:                 1.6.22-vc9_0       [vc9]
lxml:                   3.6.4-py27_0
markupsafe:             0.23-py27_2
matplotlib:             1.5.3-np111py27_1
mkl:                    11.3.3-1
mysql-connector-python: 2.0.4-py27_0
nltk:                   3.2.1-py27_0
numpy:                  1.11.2-py27_0
openssl:                1.0.2j-vc9_0       [vc9]
pandas:                 0.19.1-np111py27_0
pip:                    9.0.1-py27_0
pymysql:                0.7.9-py27_0
pyparsing:              2.1.4-py27_0
pyqt:                   5.6.0-py27_0
python:                 2.7.12-0
python-dateutil:        2.6.0-py27_0
pytz:                   2016.7-py27_0
qt:                     5.6.0-vc9_0        [vc9]
requests:               2.12.1-py27_0
scipy:                  0.18.1-np111py27_0
setuptools:             27.2.0-py27_1
sip:                    4.18-py27_0
six:                    1.10.0-py27_0
smart_open:             1.3.5-py27_0
tk:                     8.5.18-vc9_0       [vc9]
vs2008_runtime:         9.00.30729.1-2
werkzeug:               0.11.11-py27_1
wheel:                  0.29.0-py27_0
yaml:                   0.1.6-0
zlib:                   1.2.8-vc9_3        [vc9]

请注意,例如,tk:8.5.18-vc9_0 [vc9]都在其中。如果我删除了foo中的所有软件包,是否还会删除bar中使用的软件包?如何删除foo专用的软件包?

1 个答案:

答案 0 :(得分:1)

否,如果在一个环境中删除软件包,conda不会从其他环境中删除软件包。 Conda将每个软件包的主版本存储在pkgs目录中,并将该目录中的文件链接到每个环境中。删除环境时,conda只会删除与该环境关联的链接,而不会更改每个软件包的主版本。