[PYTHON] [Window + anaconda] Activer automatiquement l'environnement au démarrage de l'invite de commande

Contexte

J'utilise python à l'invite de commande windows + anaconda +. Lorsque vous travaillez dans un certain environnement, il est très gênant d'ouvrir une invite de commande et de dire «activer hogehoge», etc. un par un. Par conséquent, j'ai étudié comment entrer automatiquement dans l'environnement lorsque l'invite de commande est lancée. ~~ Vous devriez utiliser l'IDE ~~

environnement

windows10 64bit anaconda 1.6.0

Conclusion

Écrivons cmdrc

Raison

Référence officielle des opérations environnementales et [Questions sur le stackoverflow](https://stackoverflow.com/questions/28436769/how-to-change- En ce qui concerne (default-anaconda-python-environment), il semble que (ana) conda ne supporte pas l'activation automatique de l'environnement. Donc, j'ai pensé que le moyen le plus simple était de créer un fichier qui est automatiquement exécuté lorsque l'invite de commande est lancée et d'activer l'environnement qu'il contient.

Méthode

** Modifiez le registre. Veuillez faire le travail à vos propres risques. ** **

Créez un fichier appelé cmdrc.bat dans un dossier approprié (ici,C: \ Users \ USER \) et écrivez le contenu suivant.

cmdrc.bat


@echo off
cd /d %~dp0
if not exist "_TMP" (
type nul > _TMP
activate python_env
del "_TMP"
)

Remplacez python_env par votre propre environnement. Une fois enregistré, ouvrez l'éditeur de registre et créez une valeur de chaîne dans HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ Command Processor avec le nom ʻAutoRun. Les données de valeur doivent être le chemin vers cmdrc.bat`. image.png Après avoir enregistré cela, ouvrez une invite de commande et elle devrait commencer avec l'environnement activé.

Explication de cmdrc.bat

@echo off: Cette commande est définie pour exécuter la commande sans l'afficher à l'écran. Sans cela, toutes les commandes exécutées dans ce fichier seront affichées à l'écran.

cd / d% ~ dp0: Cette commande déplace le répertoire courant vers l'emplacement où se trouve le fichier de commandes. Immédiatement après le démarrage de l'invite de commande, le répertoire actuel est défini dans C: \ WINDOWS \ System32, donc s'il est laissé tel quel, le fichier _TMP décrit plus loin ne peut pas être créé.

if not exist "_TMP" (
type nul > _TMP
activate python_env
del "_TMP"
)

Au lieu de simplement «activer python_env», nous changeons le processus selon que «_TMP» existe (si c'est le cas, ne faites rien). Quand je viens de taper ʻactivate python_envsans écrire de cas, l'ordinateur a consommé beaucoup de mémoire et l'invite de commande s'est figée. Probablement, lors de l'exécution de activate, un nouveau fichier batch est démarré dans les coulisses, le fichier batch start → execute activate → activate démarre le fichier batch → ce fichier batch s'exécute activer ... et le fichier batch est exécuté indéfiniment Je pense que ça finira. Les boucles infinies sont évitées en créant un fichier appelé_TMP lors de la première exécution et en ne lançant pas ʻactivate sur les fichiers batch suivants.

Site de référence

http://c4se.hatenablog.com/entry/2012/10/19/230718 http://www.confrage.com/dos/batch-grammar/if/if.html http://d.hatena.ne.jp/nakamura001/20090203/1233652705 https://www.k-tanaka.net/cmd/del.php http://qiita.com/is_books/items/44d4cda4e11e194b8345 http://kiyotakakubo.hatenablog.com/entry/20090214/1234622897

Recommended Posts

[Window + anaconda] Activer automatiquement l'environnement au démarrage de l'invite de commande
[Anaconda] Activez l'environnement virtuel
Rendre l'environnement anaconda disponible dans Windows à partir de l'invite de commande
Que faire lorsque l'avertissement "L'environnement est cohérent ..." apparaît dans l'environnement Anaconda
Le navigateur ne s'ouvre pas automatiquement au démarrage du notebook jupyter
L'histoire selon laquelle l'environnement Homebrew a été époustouflé lors de l'installation d'Anaconda
Construire un environnement Python sur Ubuntu (lorsque pip n'était pas la valeur par défaut)
Erreur dans l'ordre lors de l'importation de Numpy dans l'environnement Windows Anaconda
Adieu l'invite de commande dans WSL, VSCode et Windows Terminal
Une histoire quand un répertoire est bogué avec la commande django-admin start project dans un environnement virtuel utilisant Pipenv
Construction de l'environnement Anaconda Python sous Windows 10
Divers paramètres Anaconda dans l'environnement Windows 10
Comment masquer l'invite de commande lors de l'exécution de python dans Visual Studio 2015
Notifier à l'aide du Centre de notifications lorsque l'environnement d'exécution est macOS en Python
python Comment notifier automatiquement par téléphone lorsque le système tombe en panne