Pythonアプリケーションを実行するバッチスクリプトを作成しました。このバッチスクリプトは、システムスケジューラと呼ばれるプログラムによってトリガーされますが、プログラムがバッチスクリプトを実行すると、Pythonが存在しないことが示されます。
バッチスクリプトを手動で実行しても、エラーは発生しません。
誰かがこれを説明したり、解決策を考え出すことができますか?
おそらく、スケジューラーから呼び出されたときに$PATHが正しく設定されていません。から呼び出されたコマンドを変更してみてください
python yourscript.py
に
/usr/bin/python yourscript.py
(システム上のPythonへの実際のパスを置き換えます。これは次のように見つけることができます。
$ which python
System Schedulerが実行されているユーザーコンテキストをチェックし、Pythonの場所がそのPATHにあることを確認します。