私はperlスクリプトを持っています(具体的には、「グラバー」のXMLTVtv_grab_oztivo
ファミリーの一部です)。
私はそれを次のように正常に実行できます:
/sw/bin/perl /path/to/tv_grab_oztivo --output /path/to/tv.xml
作業ディレクトリの問題を排除するために、すべてへのフルパスを使用します。権限は問題にはなりません。
したがって、ターミナル(Mac OSX)から実行すると、問題なく動作します。
しかし、cronジョブを介して実行するように設定すると、何も起こらないように見えます。出力などは作成されません。
実際のスクリプトの代わりにhelloworld.plを使用すると、適切なタイミングで正常に実行されるため、私が見る限りcrontabに問題はありません。
だから、私はデバッグするために何ができますか?2つのケースを見る%ENV
と、環境が大きく異なることがわかりますが、デバッグには他にどのようなアプローチがありますか?cronジョブの出力を確認するにはどうすればよいですか。これは、シェルなどからの何らかのperl「die」メッセージまたは「notfound」メッセージである可能性があります。
または、コマンドのcronバージョンを、自分と同じ環境で実行する場合と同じ環境にする必要がありますか?