Как установить один и тот же пакет в нескольких средах conda? - PullRequest
0 голосов
/ 09 июля 2020

У меня есть список из нескольких сред conda, которые я использую для разных проектов. Например:

└[3417]± conda env list                                                                                             
# conda environments:
#
base                     /????/anaconda2
analysis_eel_data     *  /????/anaconda2/envs/analysis_eel_data
explore_cora             /????/anaconda2/envs/explore_cora
pygmt                    /????/anaconda2/envs/pygmt
python3                  /????/anaconda2/envs/python3
test_cookiecutter_pj1    /????/anaconda2/envs/test_cookiecutter_pj1

Мне было интересно, есть ли «простой» способ установить один и тот же пакет в нескольких средах conda?

Под простым я подразумеваю решение, которое могло бы выдержать одна или две командные строки?

Исправьте меня, если я ошибаюсь, я думаю, что pip может быть решением, если я хочу, чтобы новый пакет был установлен в всех моих средах? [ Я ошибался ]

Я также открыт для решения, используя pip, если это проще, чем conda

Я не нашел что-нибудь по этому поводу в документации conda

1 Ответ

1 голос
/ 09 июля 2020

В conda нет встроенных функций для этого. Самый простой способ - написать сценарий bash/shell, который может установить интересующий вас пакет в нескольких средах.

Мы можем найти путь к вашему env с помощью команды conda env list. Используя это, сценарий будет выглядеть примерно так:

for env in $(conda env list); 
    do conda install -n $env <package_name>; 
done

Также обратите внимание, что это будет устанавливать его через каждые env, а не то же самое, что several, как вы упомянули. В этом случае нам просто понадобится if-conditional, чтобы определить, устанавливать в этом env или нет.

...