タスクスケジューラでPythonプログラムを実行させようとしたら余裕ではまったので、対処方法・解決方法みたいなものをメモしておきます。
タスク実行結果
タスクスケジューラでタスクを実行するとタスクの実行結果が記録されます。正常にプログラムが終了すればそのむねが表示されているのですが、なんらかのエラーがおきてしまった場合は「0x」のような感じで返り値がかえってきています。
こちらの実行結果は以下のような意味があるそうです。
戻り値 | 内容 |
---|---|
0x0 | 正常終了。 |
0x1 | 該当するデータが存在しません。 |
0x2以上 | そのほかのエラーで終了しました。 |
前回の実行結果 0x67 の原因
前回の実行結果 0x67 の原因についてですが、わたしの場合はタスクスケジューラでpythonプログラムを実行しようとしたときに、プログラム/スクリプトの欄にプログラムのフルパスを書いてしまっていたことが原因でした。
pythonプログラムのフルパスをこの欄に書いただけではプログラムを実行できないんですよね。
それではどうするのかというと、まずプログラム/スクリプトの項目にはまずpython本体の実行ファイルを指定してやる必要があります。
タスクスケジューラでpythonを実行する方法
タスクスケジューラーでpythonを実行する方法はQittaで紹介されていましたので引用しておきます。
タスクスケジューラで実行したい python ファイルを選択する。
・プログラム/スクリプト(P)
→python.exe の格納場所・引数の追加(オプション)(A):
→echo.py (python ファイル)を指定
※外部から引数を受け取りたい場合は、$(Arg0)$(Arg1)$(Arg2)… みたいに指定する・開始(オプション)(T):
→echo.py の格納場所を指定
①番のpython本体のパスを指定するところは、“”ダブルクォーテーションでパスを囲む必要があるとの情報がありましたが、検証したところ、ダブルクォーテーションがなくてもきちんと動作することを確認しました。
②、③に関してもダブルクォーテーションは不要です。
コメント