~/custom_scripts/get_all_products.rb
にRubyスクリプトがあります。
毎晩04:00に実行してほしい。
crontab -e
のcronジョブは次のようになります。
MAILTO="<email>"
0 4 * * * Ruby ~/custom_scripts/get_all_products.rb
しかし、それは実行されていません。
次に何を試すべきですか?
過去にcrontabでチルダ拡張を使用する際に問題が発生しました(これはLinux以外のUnixフレーバーであった可能性があります)。それでも、$HOME
の代わりに~
を使用することをお勧めします。
また、Ruby
実行可能ファイルへのフルパスを指定することをお勧めします。 cronで使用されるPATH
は、多くの場合、インタラクティブ環境で設定したものではありません(たとえば、私のシステムでは、cron PATH
は単に/usr/bin:/bin
です)。
解決する必要のある問題が2つあると思います。
$HOME
のシェル同義語です。 cronのようなものでそれを使用する必要があります$HOME
がコマンドに対して正しく設定されていない可能性があります。 crontab -e
は、デフォルトでrootのcrontabを編集しています。あなたのユーザーの一人ではありません。 〜と$HOME
だけを絶対パスに置き換えます。