Crontab がスクリプトを実行していません - 助けてください

Crontab がスクリプトを実行していません - 助けてください

申し訳ありませんが、Ubuntu に関しては初心者なので、この件で頭がおかしくなりそうなので、助けが必要です。

私が書いたスクリプトは、単独で実行すると機能します。 :-

#!/bin/bash                                                                                                                                                                                   
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:~/bin                                                                                                                             
cd environments                                                                                                                                                                               
cd Garmin                                                                                                                                                                                     
cd Sync                                                                                                                                                                                       
python3 sync.py -f 2018-01-01 -t 2025-01-01

問題は、1時間ごとに実行するcrontabジョブがあるが、それが実行されていないことです(体重測定が更新されていないため)。

00 * * * * ~/bin/sync.sh 

誰か助けてくれませんか。コーディングが長々と書いてあるようですが、まだ始めたばかりで申し訳ありません。

ありがとう

答え1

私は遭遇しましたこの郵便受けそれはあなたを正しい方向に導くのに役立つはずです。

最初の回答で問題が解決しない場合は、Byte Commander が書いた 2 番目の回答を使用できます。Byte Commander は、cron を扱わずに目標を達成する優れた方法を示しています。10m を 60m 程度に変更するだけです。

cron を回避するには、10 分遅延して無限ループでスクリプトを呼び出すこともできます。

前のインスタンスが終了してから 10 分後にスクリプトを再度起動する場合は、次のようにします。

while true ; do /PATH/TO/SCRIPT.PY ; sleep 10m ; 完了

ただし、最後のインスタンスがどれだけ長く実行されていたか (またはまだ実行中かどうか) に関係なく、10 分ごとにスクリプトを起動したい場合は、; を & に置き換えて、スクリプトをバックグラウンドで実行し、並行してスリープする必要があります。

while true ; do /PATH/TO/SCRIPT.PY & sleep 10m ; 完了

関連情報