web-dev-qa-db-ja.com

毎週のcronは何時に始まりますか?

私はcron manを調べましたが、:(を助ける何かを見つけられませんでした

誰か知ってる?

8
Mint

トレバーが正しいにもかかわらず、私はここで別の答えを出しています。

Cron @weeklyキーワードは、彼が述べたとおりに動作します。 ただし、ほとんどのディストリビューションはrun-partsを使用して、cronのキーワードを使用しない独自のスケジュールされたcrontabファイルを(時間、日、週、月単位で)実行します。

、Ubuntuにはcronジョブごとに個別のファイルを含む/etc/cron.weeklyがあります。

これは通常/etc/crontabで定義されています

Ubuntuのkarmic 9.10リリースの/etc/crontabには以下が含まれています

17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )

したがって、Ubuntuの毎週のcrontabは日曜日の午前6時47分に実行されます

注:crontab実装のマンページを探すときは、man 5 crontabだけでなくman crontabを使用する必要があります。後者は、crontabコマンドの構文のみを提供します。前者はcrontab実装の詳細を提供します。

16
Philip Reynolds

@weeklyは次と同等です:0 0 * * 0

つまり、日曜日の00:00に実行されます。

8
Trevor Tippins

答えはcrontab自体のマンページにあります( man 5 crontab ):

次の特別な時間指定「ニックネーム」がサポートされています。これは、5つの初期時間および日付フィールドを置き換え、先頭に「@」文字を付けます。

@reboot    :    Run once after reboot.
@yearly    :    Run once a year, ie.  "0 0 1 1 *".
@annually  :    Run once a year, ie.  "0 0 1 1 *".
@monthly   :    Run once a month, ie. "0 0 1 * *".
@weekly    :    Run once a week, ie.  "0 0 * * 0".
@daily     :    Run once a day, ie.   "0 0 * * *".
@hourly    :    Run once an hour, ie. "0 * * * *".

っていうことは 0 0 * * 0、日曜日(平日0)である限り、00:00(任意の月の任意の日付)です。

0
mwfearnley