2017-04-27 1 views
0

Je peux activer l'environnement Conda avec les problèmes du shell bash. Je peux utiliser ces deux options sur bash:Comment activer un environnement Conda depuis le shell "sh" (sur Nodejs)?

source activate env_name 
. activate env_name 

Mais j'utilise la méthode exec de noeud pour exécuter l'activation de l'environnement. Le nœud utilise le shell sh pour exécuter les commandes. J'ai essayé les commandes ci-dessus, mais elles n'ont pas fonctionné. Je suis arrivé cette erreur

/bin/sh: 1: /env_name/bin/source: not found 

donc je devais utiliser cette commande pour exécuter l'environnement

const child_process = require('child_process') 
child_process.exec('bash -c "source activate env_name"') 

Y at-il une meilleure façon de le faire pour le faire fonctionner sur Ubuntu?

J'exécuter sur Windows et il suffit de le faire fonctionner

child_process.exec('activate env_name') 

Répondre

2

Conda ne fait pas bien en ce moment (à Conda 4.3.x) avec des coquilles qui ne sont pas « avancées » comme bash et zsh. Le tableau de bord posix pur et les coquilles busybox, par exemple, ne fonctionnent pas pour le moment.

Bon nouveau si ... Ils le feront bientôt. La prise en charge d'une plus grande variété de coquilles est une caractéristique de la conda 4.4. Le PR de base pour ce travail était https://github.com/conda/conda/pull/5044, et il y a plusieurs suivis. Conda 4.4.0 devrait être publié dans canary dans les prochaines semaines.

+0

Bon à savoir, merci !! – ChesuCR