web-dev-qa-db-ja.com

Crontabを使用して毎分スクリプトを実行し、さらに24時間ごとにスクリプトを実行する

毎分特定のPHPスクリプト/var/www/html/a.phpを実行する必要があるcrontab構文が必要です。毎分の実行は00:00に開始する必要があります。 00:00 /var/www/html/reset.phpにスクリプトを実行しなければならないその他のタスク(24時間に1回)。

307
Michael

毎分

* * * * * /path/to/php /var/www/html/a.php

24時間ごと(深夜ごと):

0 0 * * * /path/to/php /var/www/html/reset.php

Crontabがどのように機能するかについては、このリファレンスを参照してください。 http://adminschoice.com/crontab-quick-reference 、およびcron jobxを構築するためのこの便利なツール: http://www.htmlbasix.com/crontab.shtml

573
Jan Hančič

これは/ etc/crontabの形式です。

# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR Sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed

参照を便利にするために、それをコピーしてcrontabファイルの先頭に貼り付けることをお勧めします。 RedHatシステムはデフォルトでそのように設定されています。

毎分何かを実行するには:

* * * * * username /var/www/html/a.php

毎日の真夜中に何かを実行するには:

0 0 * * * username /var/www/html/reset.php

実行するコマンドに/ usr/bin/phpを含めることも、phpスクリプトを直接実行可能にすることもできます。

chmod +x file.php

シェルがどのインタプリタを使用するべきか知っているように、Shebangであなたのphpファイルを始めてください:

#!/usr/bin/php
<?php
// your code here
371
Greg