web-dev-qa-db-ja.com

anacondaプロンプトでバッチファイルを実行する方法

Windowsにanaconda3をインストールした後、anacondaプロンプトからpythonコマンドを実行できますが、Windowsコマンドプロンプトからは実行できません。デスクトップショートカットを作成して、環境をアクティブにし、そこからスパイダーを実行したいと思います。以前は、.batファイルを使用してこれを行いましたが、cmd.exeからpythonコマンドを実行できないため、これは機能しません。

Anacondaプロンプトのバッチファイルを実行する別の方法はありますか? PATHを変更してcmd.exeを取得し、pythonコマンドを実行できることを知っていますが、可能であればこれを避けたいと思います。

31
SuperNano

Anacondaプロンプトは、CMDを開いてバッチファイルを実行するだけだと思います。スクリプトの最初のコマンドを作成します。

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

ジェレミーの答えを拡張する:

「activate.bat」スクリプトとそれに続くAnaconda/Python関連のコマンドには、callを使用する必要があります。そうしないと、pauseステートメントを使用した場合でも、コマンドの実行後にプロンプ​​トが直ちに終了します。以下の例をご覧ください。

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

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

call conda list pandas

pause
19
N4v

追加

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

スクリプトの開始まで(実際には引数を必要とせず、デフォルトでbase環境をアクティブにします)。

この行の後、CONDA_ envvarsを使用できることに注意してください!

8
ivan_pozdeev

Powershellバージョン:

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

注:このスクリプトは、同時に実行される同じexeの1つのインスタンスのみをサポートするLinux QT GUIライブラリのDLL制限により、一度に1つのqtconsoleのインスタンスのみを開始します。そのため、彼らは「Anaconda Navigator」を使用してQtConsoleプログラムを起動し、この制限を回避しています。

0
Bill Moore

このスレッドのおかげで、Windowsバッチファイルを取得してAnancondaプロンプトを開き、いくつかのpythonコードを実行するという課題を解決しました。

バッチファイルは次のとおりです。

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