質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

コマンド

コマンドとは特定のタスクを行う為に、コンピュータープログラムへ提示する指示文です。多くの場合、コマンドはShellやcmdようなコマンドラインインターフェイスに対する指示文を指します。

コマンドプロンプト

コマンドプロンプト(cmd.exe)はMicrosoftによって提供されているコマンドラインインタプリタです。OS/2・Windows CE・Windows NTで使用可能です。

バッチファイル

バッチファイル(Batch File)は、Windowsのコマンドラインインタープリターによって複数のコマンドを実行させる事が出来るスクリプトファイルです。

Q&A

解決済

2回答

7480閲覧

batファイルからanaconda環境でpythonプログラムを実行させたい

new_rail149

総合スコア5

Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

コマンド

コマンドとは特定のタスクを行う為に、コンピュータープログラムへ提示する指示文です。多くの場合、コマンドはShellやcmdようなコマンドラインインターフェイスに対する指示文を指します。

コマンドプロンプト

コマンドプロンプト(cmd.exe)はMicrosoftによって提供されているコマンドラインインタプリタです。OS/2・Windows CE・Windows NTで使用可能です。

バッチファイル

バッチファイル(Batch File)は、Windowsのコマンドラインインタープリターによって複数のコマンドを実行させる事が出来るスクリプトファイルです。

0グッド

0クリップ

投稿2020/03/05 06:45

前提・実現したいこと

batファイルのコマンドからAnaconda Promptの仮想環境(base)に移行し、
そこでPythonプログラムを実行させるようにしたいです。
パスを通さずに実行することは可能でしょうか。

発生している問題・エラーメッセージ

pauseを間に挟みエラーを見ようとしたのですが、ウィンドウがクローズしてしまうため原因が特定できません。
また、通常のコマンドプロンプトから上記のコマンドを入力すると仮想環境に以降してプログラム実行まで問題なく行えます。

該当のソースコード

bat

1@echo off 2C:\Users\Username\Anaconda3\Scripts\activate.bat 3pause 4cd (directory name) %~dp0 5python main.py

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

こんな感じで行けました。

bat

1@echo off 2call C:\Users\Username\Anaconda3\Scripts\activate.bat 3python %~dp0main.py 4pause

下らないことですが、実行するpythonファイルとバッチファイルを同じディレクトリに入れる場合、
バッチファイルの名前をpython.batとは付けないように。
pythonコマンド実行の時にbatも再度呼び出されて無限ループになります。

投稿2020/03/05 10:52

yureighost

総合スコア2183

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

new_rail149

2020/03/06 00:28

動作しました。ありがとうございます。
guest

0

バッチファイルの中に、バッチファイル名を書くと、処理を呼び出すのじゃなくて、行ったきりになります。そのバッチファイルを実行はするんだけど、返ってこないので、次の行は実行されません。

戻ってこさせるためには、callを書きます。呼び出すという意味です。
call C:\Users\Username\Anaconda3\Scripts\activate.bat

cd (directory name) %~dp0

文法エラーです。これはどういう意図ですか?
cd %~dp0でいいのでは?

ウィンドウがクローズしてしまうため

バッチスクリプトが完全に出来上がるまでは、Explorerからダブルクリックで起動するんじゃなく、コマンドプロンプトウィンドウからファイル名を書いて実行します。

投稿2020/03/05 15:39

otn

総合スコア85901

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

new_rail149

2020/03/06 00:29

batファイルが実行フォルダ以外の場所にあった場合を想定していました。言葉足らずで申し訳ありません。 解説ありがとうございます。
otn

2020/03/06 00:32

これは、 > 文法エラーです。これはどういう意図ですか? に対する返答でしょうか?であれば、 >batファイルが実行フォルダ以外の場所にあった場合を想定していました。 は最初からわかっています。 「(directory name) 」という記述の意図の質問でした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問