ホームページ >バックエンド開発 >PHPチュートリアル >Linux crontab は PHP URL にアクセスして、スケジュールされたタスクを完了します

Linux crontab は PHP URL にアクセスして、スケジュールされたタスクを完了します

WBOY
WBOYオリジナル
2016-06-20 12:45:131246ブラウズ

crontab -e タスクの作成/編集
crontab -l すべてのタスクのリストを表示

crontab 形式:

基本形式:
分、時間、日、 month、week コマンド
最初の列は 1 から 59 までの分を表します。各分は /1 で表されます
2 番目の列は 1 から 23 時を表します (0 は 0 時を表します)
3 番目の列は日付を表します1 ~ 31
4 列目は月 1 ~ 12 を表します
5 列目は週 0 ~ 6 を示します (0 は日曜日を意味します)
6 列目は実行するコマンドを表します

PHP スクリプトを実行します:
* * * * * /usr/bin/php -f /root/test.php >> test.log

は、「test.php ファイルを 1 分ごとに実行する」を意味します、スクリプトの結果は内部の test.log に出力されます。 ディレクトリの問題に注意してください。

たとえば、test.php のコードは echo date("Y-m-d H:i:s") n のようになります。

crontab を使用するのは初めてなので、bin/php が 1 つの PHP ファイルでのみタスクを完了できることがわかりました。include と require が関係する場合は、「class.」に関係するパスの問題に注意してください。 (クラス)」は機能しないようです。誰かが私にアドバイスをくれることを願っています。

また、このスクリプトには実行権限が必要であることに注意してください。

私が完了する必要があるタスクは、サイトマップを生成するためにファイル (リンク) に定期的にアクセスすることです。そのため、URL へのアクセスは bin/php ではなく bin/curl を使用して行うことができます。したがって、私のコードは次のようになります:

* * * * * /usr/bin/curl http://aa.com:8080/tools/sitemap.php >> /Desktop/untitled .html

このコマンドの背後にある出力に関しては、コマンドを作成する際のデバッグを容易にするためだけに必要ありません。

crontab コマンドのパラメータについては、マニュアルを読むことをお勧めします。ここでは、見つかった情報のセクションに記載されている内容のみをコピーします。

このサイトの @Jacendfeng による記事は、Linux でスケジュールされたタスクを実行するための crontab コマンドについて詳しく説明しています。読むことをお勧めします。

参考資料:
Niao Ge の Linux プライベートクッキング - 第 15 章、ルーチンワークスケジュール (crontab)
linux が自動的に実行する crontab 学習ノート
linux スケジュールコール仕様 URL リンク、Linux crontab の紹介PHP スクリプト プログラムのスケジュールされた実行
Linux は crontab を使用して、スケジュールされたタスクの PHP 実行を実装します

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。