国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Web服務器 > 正文

Ubuntu系統下用Crontab命令定時執行PHP文件詳解

2024-09-01 13:52:13
字體:
來源:轉載
供稿:網友

前言

一般我在開發中,常用的定時任務有2種。一種是直接調用PHP文件執行,還有一種是調用遠程URL地址。

首先,先來亮相一下我們今天的主角,Crontab命令。這個是系統定時命令,作用是定時的去執行一些任務。包含一些系統級別的任務,當然用戶也可以直接借用該命令來實現自己的一些計劃任務。

該命令一般跟隨系統啟動,我們可以使用一下命令來查看是否cron是否啟動

pgrep cron

如果啟動了,會返回一個進程id

ubuntu,crontab,php,crontab命令,執行php文件

Crontab文件一般存放于/etc目錄下。我們使用,crontab -e來編輯cron任務。(第一次用這個命令,會讓你選擇文本編輯器)

ubuntu,crontab,php,crontab命令,執行php文件

打開cron文件,注意觀察最后一行 m h dom...這里簡要介紹一下它的意思。

  • m:分鐘,0-59
  • h:小時,0-23
  • dom:日期,1-31
  • mon:月份,1-12
  • dow:星期,0-6,0為星期天
  • command:命令

這里,我們應該已經知道其大概的用法了。我們只要在對應的位置填寫上我們需要的數字日期,就可以使用它來表示:在某月(mon)的某天(dom)或者星期幾(dow)的幾點(h,24小時制)幾分(m)執行某個命令(command)。

舉個栗子:

* * * * * php /path/to/your/cron.php5個星號分別代表定時指定每分、小時、日、月、周。* 19 * * * php /var/www/cron/crontab.php講第二個參數h填寫為19,則表示每天的下午7點執行crontab.php。* * * * * php /path/to/your/cron.php   每隔一分鐘執行一次任務 0 * * * * php /path/to/your/cron.php     每小時的0點執行一次任務,比如6:00,10:00 6,10 * 2 * * php /path/to/your/cron.php   每個月2號,每小時的6分和10分執行一次任務 */3,*/5 * * * * php /path/to/your/cron.php  每隔3分鐘或5分鐘執行一次任務,比如10:03,10:05,10:06

在這個例子中,我們看到不僅有數字還有星號和/等等符號。這些符號可以讓定時更加的靈活。

  • *(星號):表示任意值,在相應位置填寫*,可以代表任意執行。比如h為*,則為任意的小時
  • ,(逗號):表示一個部分填寫多個值,比如在m位置填寫1,5代表1分鐘或5分鐘時候
  • /(斜杠):表示每隔多久,比如在h部分填寫*/2表示每隔2個小時,*/3表示每隔3個小時,
  • */1和*無區別,所以可以省略。這里可以想想,*/2表示能被2整除的時間就好理解了。

使用你的編輯器,保存->退出之后。重新啟動cron任務。在每天的相應時間即可看到效果。

下面我們就先來說說PHP開發中,我常用的兩種。

第一種:直接調用PHP文件

這種比較簡單,我們新建一個php文件。向一個文件插入一些簡單的日期內容。

#!/usr/bin/php -q<?php$file = "/var/www/".date("H")."_".date("i")."_".date("s").".txt";file_put_contents($file,date("Y-m-d"));?>

注意:這種直接調用PHP文件需要在PHP文件最上方加入#!/usr/bin/php -q代碼,而第二種方式(接下來會講),是直接訪問鏈接,通過Apache來解析PHP,這種PHP腳本則不需要加這段代碼。

1 6 * * * /path/to/your/cron.php每天的上午6點01分,執行cron.php文件

第二種:通過訪問URL鏈接定時。

訪問URL鏈接需要借助于瀏覽器來實現。我們選擇Lynx瀏覽器,Lynx瀏覽器是一款輕便的web瀏覽器,使用于大部分Unix 和Linux系統環境。安裝命令:

sudo apt-get install lynx

然后就可以和直接訪問PHP文件類似的定時訪問URL啦。

* * * * * lynx -dump http://weiya.me/index.php

注意這個地址最好用絕對地址,包含“http://”的完整url。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 北票市| 沙雅县| 永清县| 蓝山县| 平陆县| 通化市| 平江县| 凤城市| 江川县| 乌兰浩特市| 固镇县| 九寨沟县| 南京市| 利津县| 义乌市| 来安县| 朝阳区| 青龙| 合江县| 沂水县| 深水埗区| 临颍县| 石景山区| 宁阳县| 镇康县| 永宁县| 呼图壁县| 丹阳市| 罗定市| 邮箱| 奉节县| 偃师市| 武威市| 白水县| 安顺市| 嘉荫县| 惠东县| 英吉沙县| 涟水县| 唐河县| 长海县|