您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關如何在linux中利用crontab執行PHP定時任務,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
安裝crontab:
yum install crontabs
說明:
/sbin/service crond start //啟動服務
/sbin/service crond stop //關閉服務
/sbin/service crond restart //重啟服務
/sbin/service crond reload //重新載入配置
查看crontab服務狀態:service crond status
手動啟動crontab服務:service crond start
查看crontab服務是否已設置為開機啟動,執行命令:ntsysv
加入開機自動啟動:
chkconfig –level 35 crond on
crontab命令:
功能說明:設置計時器。
語 法:crontab [-u <用戶名稱>][配置文件] 或 crontab [-u <用戶名稱>][-elr]
補充說明:cron是一個常駐服務,它提供計時器的功能,讓用戶在特定的時間得以執行預設的指令或程序。只要用戶會編輯計時器的配置文件,就可以使 用計時器的功能。其配置文件格式如下:
Minute Hour Day Month DayOFWeek Command
參 數:
-e 編輯該用戶的計時器設置。
-l 列出該用戶的計時器設置。
-r 刪除該用戶的計時器設置。
-u<用戶名稱> 指定要設定計時器的用戶名稱。
crontab 格式:
基本格式 :
分鐘 小時 日 月 星期 命令
* * * * * *
第1列表示分鐘1~59 每分鐘用*或者 */1表示
第2列表示小時1~23(0表示0點)
第3列表示日期1~31
第4列 表示月份1~12
第5列標識號星期0~6(0表示星期天)
第6列要運行的命令
記住幾個特殊符號的含義:
“*”代表取值范圍內的數字,
“/”代表”每”,
“-”代表從某個數字到某個數字,
“,”分開幾個離散的數字
# Use the hash sign to prefix a comment
# +—————- minute (0 – 59)
# | +————- hour (0 – 23)
# | | +———- day of month (1 – 31)
# | | | +——- month (1 – 12)
# | | | | +—- day of week (0 – 7) (Sunday=0 or 7)
# | | | | |
# * * * * * command to be executed
crontab幾個例子如下:
(1)第一個例子。
30 21 * * * /etc/init.d/nginx restart
每晚的21:30重啟 nginx。
(2)第二個例子,也就是本教程測試的例子
* * * * * /usr/bin/php -f /root/test.php >> test.log
每一分鐘執行/root/test.php文件,將結果輸出到test.log中。
完成了上面基礎工作后,就來看看怎么使用crontab定時執行PHP腳本:
(1)我在/root下新建test.php文件,內容如下:
復制代碼 代碼如下:
<?php
#!/usr/bin/php -q
echo date('Y-m-d H:i:s')."from http://www.phpddt.com \n";
?>
說明:你可以用whereis php查找php執行文件位置。
(2)然后crontab -e編寫如下shell:
復制代碼 代碼如下:
* * * * * /usr/bin/php -f /root/test.php >> test.log
說明:test.php必須為可執行文件:chmod +x test.php
測試結果很正常,截圖如下:
當然你可以用使用crontab -e繼續添加任務,在/var/spool/cron下你可以看到一個root文件。
windows下直接用windows計劃任務,通過bat打開網頁就可以了。不像linux這么復制。
以上就是如何在linux中利用crontab執行PHP定時任務,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。