可変時間と可能なプログラムエラーを考慮して、1日に1回だけプログラムを実行する方法は?

可変時間と可能なプログラムエラーを考慮して、1日に1回だけプログラムを実行する方法は?

コマンドは一度実行する必要がありますが、成功するまで1日1回だけ実行する必要があります。

継続的な稼働時間を期待できず、プログラムの成功も保証できません。

プログラムを使用するにはネットワークアクセスが必要ですが、コンピュータを起動するたびにネットワークにアクセスすることはできません。

私のプログラムは成功(0を返す)しない限り、-1などで終了します。

ベストアンサー1

この機能を提供するには、シェルを使用してください。たとえば、次のようなスクリプトを作成します。

#!/bin/sh
# Check to see if this is already running from some other day
mkdir /tmp/lock || exit 1
while ! command-to-execute-until-succeed; do
    # Wait 30 seconds between successive runs of the command
    sleep 30
done
rmdir /tmp/lock

次に、cronにスクリプトを割り当てます。

おすすめ記事