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

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

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

cronは、Unix系OS上でデーモンプロセスとして動作する、スクリプトの自動実行が可能なジョブスケジューラです。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

anacondaの指定の環境でcronを実行したい

yukkys
yukkys

総合スコア42

cron

cronは、Unix系OS上でデーモンプロセスとして動作する、スクリプトの自動実行が可能なジョブスケジューラです。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

1回答

0グッド

0クリップ

5616閲覧

投稿2018/03/14 15:27

編集2018/03/14 16:03

前提・実現したいこと

複数のanaconda環境があり、cronの定時実行で、その中の一つの環境を使って.pyファイルを実行したい。

cron環境設定

5 * * * * /Users/test_user/anaconda3/bin/python3 /Users/test_user/trading/cron_test.py;

ならば実行できていますが、そこからanacondaの別の環境で実行することは可能でしょうか?

試したこと

当初は以下のコードでしたが実行できず、

5 * * * * python3 /Users/test_user/trading/cron_test.py

which python3 で出力された
/Users/test_user/anaconda3/bin/python でpythonを実行しています。

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

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

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

下記のような質問は推奨されていません。

  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

y_waiwai

2018/03/14 17:09

実行できずとはなにがどうなって実行できないんですか?
yukkys

2018/03/14 17:15

おそらくこのパスだと、anacondaのroot環境設定で実行されているのかなと推測しています。例えば、root以外にenvironment2という環境があった場合に、その環境でcronを実行できるものなのか、できないものなのか、できるものならその方法を伺いたいです。
y_waiwai

2018/03/14 17:22

そのenvironment2という環境がどういうものかわからないのでなんともいえないです
yukkys

2018/03/14 17:29 編集

環境の中身は関係ありますか?anaconda使ってたらそれぞれのpythonファイルやライブラリのバージョン違いによってpythonファイルの書き方は変わってくるかと思いますので、当然どの環境で実行するか指定する必要があるのではないかと推測しています。間違っていたら御指摘いただけると助かります。
y_waiwai

2018/03/14 17:35

そりゃそのコードがインポートしているモジュールがなければ動かないでしょうが、とにかくまず、その実行できないという状況を詳しく把握できないと話にはなりませんが。

回答1

0

ベストアンサー

condaで作った仮想環境のpythonを指定してあげれば良いと思います。
具体的にはターミナルで

conda info -e
を実行して、例えば以下のような表示が出たとします。

python27 /anaconda3/envs/python27

この場合、python27の実行ファイルは
/anaconda3/envs/python27/bin/python
になります。

source activate python27
を実行して仮想環境を切り替えてから、
which pythonしてあげると、正しいpathが出力されるはずです。

投稿2018/03/15 00:39

kawarayu

総合スコア55

下記のような回答は推奨されていません。

  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

回答へのコメント

yukkys

2018/03/15 03:20

その環境に設定してからwhich pythonして、どこのものが実行されているのか確認すれば良いのですね!ありがとうございました!

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.83%

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

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

質問する

関連した質問

同じタグがついた質問を見る

cron

cronは、Unix系OS上でデーモンプロセスとして動作する、スクリプトの自動実行が可能なジョブスケジューラです。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。