毎日午後10時にcronを実行する方法


177

私は入りました:

* 22 * * * test > /dev/null

ただし、これが毎分実行されていることをメールで通知されています。これは私が望んでいることに対して正しいと思ったので、私は混乱していると思います。


3
このウェブサイトは、任意のcronのスケジュールを説明します:crontab.guru
ブルーノ・フィンガー

回答:


368

それは私が推測する毎時22分ごとに実行されています。次の方法で、時間の最初の1分ごとに実行します22:

0 22 * * * ....

22時間は比較的節約できるかもしれませんが、この質問の
Martin Thoma

@MartinThomaは常にman cron最初に試行します。探しているものを見つける必要があります。
マークサイモン

システムの日付を確認することを忘れないでください。たまたま、crontabで22からジョブを開始するように設定しましたが、システムがUTCであったため、実際には23で開始しました(つまり、システムの22はGMTでは23でした)。
nnsense

私はこの回答に賛成しましたが、私はこのルールを知っていました...とにかく私は私の無言の知識を確認したいと思いました:D
rnrneverdies

154

ここにいくつかの例があります

  • 毎時46分で6時間ごとに実行します。

    46 */6 * * *

  • 午前2時10分に実行:

    10 2 * * *

  • 午前3時15分に実行:

    15 3 * * *

  • 午前4時20分に実行:

    20 4 * * *

  • 午前5時31分に実行:

    31 5 * * *

  • 午後5時31分に実行します。

    31 17 * * *



25

これは、新しいcrontabエントリを作成するたびに確認するものです。

端末タイプから編集を開始するには:

 zee$ crontab -e

crontabファイルに追加するもの:

0 22 * * 0  some-user /opt/somescript/to/run.sh

その意味:

[ 
+ user => 'some-user',      
+ minute => 0’,             <<= on top of the hour.
+ hour => '22',              <<= at 10 PM. Military time.
+ monthday => '*',           <<= Every day of the month*
+ month => '*',              <<= Every month*
+ weekday => ‘*’,            <<= Everyday (0 thru 6) = sunday thru saturday
] 

また、マシンが実行しているシェルを確認し、それに応じてファイルに名前を付けます。そうしないと実行されません。

どちらかでシェルを確認します echo $SHELLまたはでecho $0

「Bourne shell (sh)、Bourne again shell (bash)、Korn shell (ksh)..etc」のいずれかになります。


1

crontabの構文

* * * * * 

Minute(0-59) Hour(0-24) Day_of_month(1-31) Month(1-12) Day_of_week(0-6) Command_to_execute

あなたの構文

* 22 * * * test > /dev/null

あなたのジョブは、毎週、毎月、そして毎年、毎分22:00に実行されます。

分の場所にオプション(0〜59)を追加すると、週、月、年のすべての時間で22:00時に1回実行されます。

0 22 * * * command_to_execute 

ソースhttps://www.adminschoice.com/crontab-quick-reference

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.