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 ~~
windows10 64bit anaconda 1.6.0
Écrivons cmdrc
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.
** 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`.
Après avoir enregistré cela, ouvrez une invite de commande et elle devrait commencer avec l'environnement activé.
@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.
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