web-dev-qa-db-fra.com

Comment faire en sorte que les fichiers batch s'exécutent à l'invite anaconda

Après avoir installé anaconda3 dans Windows, je peux exécuter les commandes python à partir de l'invite anaconda, mais pas à partir de l'invite Windows. Je souhaite créer un raccourci sur le bureau pour activer mon environnement et exécuter spyder. Auparavant, je le ferais avec un .bat fichier, mais maintenant que je ne peux pas exécuter python de cmd.exe cela ne fonctionne pas.

Existe-t-il un autre moyen d’exécuter des fichiers de commandes pour l’invite anaconda? Je sais que je pourrais simplement modifier mon PATH pour obtenir cmd.exe pour exécuter python, mais j'aimerais éviter cela si possible.

31
SuperNano

Je crois que tout ce que l’Anaconda Prompt fait est d’ouvrir CMD et d’exécuter un fichier de commandes. Faites la première commande de votre script:

call <anaconda_dir>/Scripts/activate.bat <anaconda_dir>
32
Jeremy McGibbon

Prolonger la réponse de Jeremy:

Vous devez utiliser call pour le script "activate.bat" ainsi que pour toute commande ultérieure liée à Anaconda/Python. Sinon, l'invite se fermera immédiatement après l'exécution des commandes, même si vous utilisez une instruction pause. S'il vous plaît voir ci-dessous exemple:

set root=C:\Users\john.doe\AppData\Local\Continuum\anaconda3

call %root%\Scripts\activate.bat %root%

call conda list pandas

pause
19
N4v

Ajouter

call "<anaconda_dir>\Scripts\activate.bat"

au début de votre script (il n’exige pas d’argument, il active par défaut l’environnement base.).

Notez qu'après cette ligne, vous pouvez utiliser le CONDA_ envvars!

8
ivan_pozdeev

Version Powershell:

$qtconsole="C:\Users\<YourUserName>\.anaconda\navigator\scripts\qtconsole.bat"
start-process $qtconsole -WindowStyle Hidden

Remarque: ce script ne démarrera qu'une instance de la qtconsole à la fois en raison de DLL limitations de la bibliothèque d'interface graphique utilisateur de QT Linux ne prenant en charge qu'une seule instance du même fichier exe fonctionnant à la fois. C'est probablement pourquoi ils utilisent "Anaconda Navigator" pour lancer les programmes QtConsole afin de contourner cette restriction.

0
Bill Moore

Grâce à ce fil, j'ai résolu le problème d'obtenir un fichier de commandes Windows pour ouvrir l'invite d'Ananconda, puis exécuter du code python.

Voici le fichier batch:

@echo on
call C:\ProgramData\Anaconda3\Scripts\activate.bat
C:\ProgramData\Anaconda3\python.exe "D:\Documents\PythonCode\TFLAPI\V1.py"
0
JedB