![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
クーロンで二つのバッチをスケジュールしてるのですが
二つ目のバッチが動きません。
なにが原因なのでしょうか?
** cron_file の変更**
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.18554 installed on Tue Apr 4 13:15:59 2000)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
0 0 * * * /u02/oradata/bat/A001.bat > /u02/oradata/bat/A001.log
0 * * * * /u04/tanaka1/bat/B001.bat > /u04/tanaka1/bat/B001.log
* /u04/tanaka1/bat/B001.bat が 動かない
B001.bat は chmod 777 で実行権限を付与
$ B001.bat と 打つと
コマンドが見つからない と エラーメッセージが出ます。
一つ目のバッチは A001.log のタイムスタンプから動作してると思われます。
No.2ベストアンサー
- 回答日時:
crondは、実行したコマンドが(標準出力または標準エラー出力に)何らかの出力した場合、その内容をコマンド実行ユーザにメールします。
質問のcrontabだとstderrがリダイレクトされてないので、エラーがメールされてると思われます。メール配送システムが使えればですが。
crondからメールが届いてないか確認するか、stderrをファイルにリダイレクトしてみては。
参考URL:http://www.itmedia.co.jp/help/tips/linux/l0388.h …
bat/B001.bat 1>STD.LOG 2>ERR.LOG
と 書けば
標準出力も
エラー出力も
ファイル化されるので
デバッグしやすいって事ですね。
No.5
- 回答日時:
> telnetで
> /u04/tanaka1/bat/B001.bat
> と打つと動作しますが
スクリプト自体は正常に動作するようですね。
> クーロンに組み込むと途中で
> 止まってるようです。
と言うことになるとtelnetでログインして実行した環境とcronで実行した時の環境の違いにより正常に動作しなくなるようですね。
この途中で止まっているというのはエラーになって終了、もしくはスクリプトに記述したコマンドが動作したままだんまりのどちらでしょうか?
エラーになるのでしたら、エラーメッセージが出力されていれば、そのエラーメッセージからどうすればいいかが分かるかもしれません。
ちなみにtelnetでログインして実行した時のユーザは、cronに登録した時のユーザと同一ユーザでしょうか、それとも別なユーザでしょうか?
(たぶん、結果からすると別ユーザでしょうかね)
cronに登録した時のユーザで同様にスクリプトファイルを実行するとcronで実行した時と同じく途中で止まりますか?
この回答への補足
>ちなみにtelnetでログインして実行した時のユーザは、cronに登録した時のユーザと同一ユーザでしょうか、
>それとも別なユーザでしょうか?
同一ユーザです。
No.4
- 回答日時:
>$ B001.bat と 打つと
>
> コマンドが見つからない と エラーメッセージが出ます。
これは、No.1の方も書いている通り、コマンドのサーチパス(環境変数PATH)に「B001.bat」が存在するディレクトリが無かっただけでは?
確認したかった事はcrontabに書いてあるように
# /u04/tanaka1/bat/B001.bat
と実行した場合には正常に動作するのかどうかという事です。
この回答への補足
>確認したかった事はcrontabに書いてあるように
># /u04/tanaka1/bat/B001.bat
>と実行した場合には正常に動作するのかどうかという事です。
telnetで
/u04/tanaka1/bat/B001.bat
と打つと動作しますが
クーロンに組み込むと途中で
止まってるようです。
No.3
- 回答日時:
cronでcrontabで設定した内容が実行されたかは、cronのログ/var/log/cronを見れば分かります。
以下のようなログが残っていれば、cronからは起動されたという事です。
○/var/log/cronの出力例
「/bin/date > /tmp/LOG」をユーザrootで実行した場合
-------8<-------8<-------8<-------8<-------8<-------
Apr 16 15:41:01 FedoraCore3 crond[4918]: (root) CMD (/bin/date > /tmp/LOG)
-------8<-------8<-------8<-------8<-------8<-------
もしcronのログから「B001.bat」が起動されており、標準出力に何らかの出力があるのに標準出力をリダイレクトしたファイルに何も出力されていない場合、指定した「B001.bat」に問題があるとしか思えません。
No.2の方が書かれているようにcronからのメールがないか確認するか、標準エラー出力をファイルにリダイレクトして確認した方がいいでしょうね。
ところで、指定した「B001.bat」は、cronで実行させようとしているユーザ(crontabコマンド実行時のユーザ)でそもそも正常に動作する事は確認しているのでしょうか?
P.S.
この質問に関連すると思われる質問をしていらっしゃると思いますが。
それらについて出来れば質問の内容が解決したのなら質問を締め切ってもらえないでしょうか?
解決したのかしていないのか反応がないため分からないので。
この回答への補足
>ところで、指定した「B001.bat」は、cronで実行させようとしているユーザ(crontabコマンド実行時のユーザ)で
>そもそも正常に動作する事は確認しているのでしょうか?
$ B001.bat と 打つと
コマンドが見つからない と エラーメッセージが出ます。
質問自体は自宅で
動作確認は会社でやってるので
この質問に対する結果は
4月18日(月)にならないと分かりません。
No.1
- 回答日時:
$ B001.bat
でコマンドがないエラーとなるのは、カレントディレクトリにパスがないからではありませんか?その実行ファイルのあるディレクトリで
$ ./B001.bat
でもダメでしょうか。
cronが動かないのはちょっと理由がわかりませんが、/var/log/message(あるいは何らかのログ)にcrondからのログが出ていると思いますので、それを見たら何か手がかりがあるかもしれません。
この回答への補足
$ ./B001.bat
で動きました。
/var/log/message
は現在のユーザーでは
アクセス権限がありませんでした。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) フォルダ内の特定 拡張子のファイルを一括実行するBat ファイルについて 4 2022/04/17 09:51
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- その他(プログラミング・Web制作) ファイル名の一部をbatで変更したい batファイルを使って、以下のようにファイル名の一部を変更した 3 2023/02/21 20:09
- その他(プログラミング・Web制作) バッチファイルでPCのモデル名を取得したい 1 2022/03/31 10:58
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- その他(プログラミング・Web制作) BATファイルについて 2 2023/07/20 20:18
- その他(音楽・ダンス・舞台芸能) 感想を教えて下さい! 一曲でも良いので、曲のジャンルと感想を教えて下さい。 Mr Flash - F 12 2022/06/28 22:37
- その他(プログラミング・Web制作) テキストから指定行を抜き出したい 2 2022/07/13 19:35
- その他(コンピューター・テクノロジー) batファイルでPCの設定内容やプロパティーを取得したいのですが、コマンド1個で1ファイルとなるのを 2 2022/04/27 15:27
- 英語 青枠の部分は200000ドル以外全てという意味なのですが、全て+200000ドルという意味に感じてし 4 2022/12/15 14:32
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの表にヘンな枠が・・・
-
pingは正常なのにtracerouteで...
-
SONYの音楽ソフト「x-アプリ」...
-
PowerShellってなんでイッパツ...
-
Openイベントを開始させないで...
-
Macでlsした際の、ファイル名の...
-
[Access] パススルークエリーで...
-
バッチファイル内の各コマンド...
-
最初の一度しか実行されないロ...
-
shutdownコマンド実行の残り時...
-
システム終了時にバッチファイ...
-
ネットワークドライブ上のVBScript
-
windowsからtelnetでログインし...
-
linux初心者です wineをつかっ...
-
スタートアップのプログラム実...
-
コントロールパネル
-
「ファイル名を指定して実行」...
-
emacsでCtrl+zを押してサスペン...
-
「一定の時間間隔で5秒毎にMacr...
-
UbuntuにROSをインストールしたい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルの表にヘンな枠が・・・
-
SONYの音楽ソフト「x-アプリ」...
-
pingは正常なのにtracerouteで...
-
LD_LIBRARY_PATHって?
-
ROBOCOPY cmdで正常に処理され...
-
バッチファイル内の各コマンド...
-
Openイベントを開始させないで...
-
linuxサーバーのキャッシュをク...
-
最初の一度しか実行されないロ...
-
shutdownコマンド実行の残り時...
-
windows10のごみ箱をrd /s /q C...
-
CRONを隔週の日曜日に実行させたい
-
SPI非言語の問題 解説お願いします
-
python IDLEで訂正、削除のやり...
-
常に全画面表示するには・・・
-
エクセルからアクセスのプロシ...
-
信頼済みサイト登録をbatファイ...
-
デフラグは途中で止めても効果...
-
emacsでCtrl+zを押してサスペン...
-
taskkill をバッチ処理できない。
おすすめ情報