2014-07-10 7 views
10

Sto configurando le chiamate a python (distribuzione Anaconda) tramite i file BAT e l'utilità di pianificazione di Windows.Ambienti Conda e file .BAT

ora ho usato ambienti per la prima volta e stava cercando di impostare un file .bat come di seguito:

activate [my_env] 
python my_script.py 
deactivate 

Purtroppo sembra che il secondo comando non viene eseguito.

risposta

2

Sei sicuro di aver bisogno di un file batch? Penso che questo dovrebbe funzionare.

cmd "/c activate [my_env] && python my_script.py && deactivate" 

quando ho fatto un semplice file che contiene

print("Hello") 

che ho chiamato myprint.py e corsi

cmd "/c activate anaconda33 && python myprint.py && deactivate" 

Questo ha funzionato per me. È anche possibile inserirlo in un file batch a una riga.

+0

Questo non ha funzionato, ma chiamando pitone nella directory ENV sembra fare il lavoro come 'C: \ Anaconda \ ENV \ linkdex_py27 \ python.exe script.python' – Hans

+1

Hanno hai aggiunto la directory binaria anaconda alla tua variabile d'ambiente PATH? – BKay

+0

Sì, ho. Ho provato di nuovo quanto sopra e ho notato che ha funzionato per me se ho modificato la riga script.py nel percorso completo - anche se era nella directory in cui ho iniziato a lavorare. – Hans

0

Tutto l'attivazione fa è mettere l'ambiente nella parte anteriore del PERCORSO. Puoi semplicemente chiamare il percorso assoluto a python nell'ambiente che desideri, ad esempio C:\Anaconda\python my-script.py.

+0

Questo è vero, ma dovresti essere molto attento a questo, perché activate.bat potrebbe anche mettere DLL critiche anche su PATH. – msarahan

+0

Funziona anche per i punti di accesso e gli script installati dall'utente - verranno eseguiti nell'interprete Python dell'ambiente e utilizzeranno i 'pacchetti del sito 'ecc. – j08lue