51

最後に実行したcronジョブの詳細を取得したいと思います。内部の問題が原因でジョブが中断された場合は、cronジョブを再実行したいと思います。

注:私にはスーパーユーザー権限がありません。

4

3 に答える 3

78

以下を使用して、以前に実行された cron ジョブの日付、時刻、ユーザー、およびコマンドを確認できます。

grep CRON /var/log/syslog

これにより、すべてのcron ジョブが表示されます。特定のユーザーによって実行されたジョブのみを表示したい場合は、次のようなものを使用します。

grep CRON.*\(root\) /var/log/syslog

cron はジョブの開始時にログを記録するため、長いジョブが独自の完了ログを保持したい場合があることに注意してください。システムがジョブの途中でダウンした場合でも、ログに残ります。

編集: root アクセス権がない場合は、独自のジョブ ログを保持する必要があります。これは、ジョブ コマンドの最後に次のコードを追加するだけで実行できます。

&& date > /home/user/last_completed

このファイル/home/user/last_completedには、ジョブが最後に完了した日時が常に含まれていました。完了日をファイルに追加する場合は、>>代わりに使用します。>

コマンドを小さなbashまたはshスクリプトに入れ、cronにそのファイルを実行させることで、同じことを達成することもできます。

#!/bin/bash
[command]
date > /home/user/last_completed

この場合の crontab は次のようになります。

* * * * * bash /path/to/script.bash
于 2012-06-21T04:34:19.080 に答える
13

/var/log/croncron ジョブ ログが含まれます。ただし、表示するには root 権限が必要です。

于 2012-06-21T04:39:50.070 に答える