crontabのログから間違えた箇所を探る
crontabは時間などの指定を存在しないものを設定したら、それを教えてくれます。
しかし、それも通り越して、実際に動かしてからミスに気が付くものもあります。
そんな時にどこが間違えているのかを知る方法を紹介します。
まず確認するログ
cronは実行した日時をログとして記載しています。
そして、そのログには、実行したcronの内容も記載されていたりします。
もし実行される時間になっても思ったような実行結果にならない場合、以下のログを確認してください。
/var/log/cron
ログを確認するには、こんなコマンドが便利です。
tail -n 50 /var/log/cron
このコマンドを使うと、ログの末尾から50行前までメッセージを確認することができます。
数字は適宜、変えて実施してください。
実施からすぐに確認する場合は、本当にすぐに見ることができるのでお勧めです。
確認方法
ログのメッセージですが以下のような記載がされております。
2025-XX-XXTXX:XX:XX.517675+09:00 DESKTOP-XXXXXX CRON[799]: (user name) CMD (<crontabに記載しているコマンド>)
もし、crontabに記載したコマンドにミスがある場合は、そのミスの直前までのコマンドが記載されています。
そのため、記載されている以降の箇所にミスがあることがわかります。
そこまでわかれば、トライ&エラーを続けるのみです!
WSLの場合、ログはどこにあるのか
WSLを使用している場合は、基本的にUbuntuベースの環境になっているため、以下でメッセージを確認することができました。
※/var/log/cron自体が存在していないため。
grep CRON /var/log/syslog
おわりに
crontabは、日時を間違えていたり、コマンドを間違えていた場合は、ログや返答で教えてくれるのでかなり優しいですよね。
そんな優しいところが好きだったりします。
超絶初心者の方は、私のようにトライ&エラーを続けて、一緒にマスターをめざしましょうね!