如何用php作linux自動執(zhí)行腳本?
在安裝php的時候,會產(chǎn)生一個可執(zhí)行文件,文件名為php.將它 copy 到 /usr/local/bin 下.在終端方式執(zhí)行php程序:
php -q onlinnum.php
php 原本是應(yīng)用在網(wǎng)頁應(yīng)用的﹐因此它會送出 html 的header﹐但是在此我們是要將 php 用作 shell script﹐"-q" 就是表示不要送 出 header 的意思.你可以試試看不加上 -q 的顯示結(jié)果。此時你已經(jīng)可以在終端方式下執(zhí)行php 代碼了。 linux命令:cron daemon
這是一個系統(tǒng)中常駐的服務(wù),功能在于執(zhí)行例行性的工作,如每天一次或每月一 次檢查磁盤。cron daemon 會在每分鐘檢查一次排定的工作表(crontab),看看是否有要執(zhí)行的指令,所有的輸出會以mail寄給用戶。
設(shè)置 crontab
命令:crontab -e
該命令呼叫vi編輯器來編輯執(zhí)行的清單。例如
0 0 1,15 * * fsck /home
1 * * * * /home/myhome/printhello
每一行代表一項(xiàng)排定的工作,在指令前為排定的時間,總共有5個欄位,以空格間隔,由左到右依序如下:
--------------------------
分鐘 從00到 99
點(diǎn)鐘 從0到 24
日 從01到31
月 從01到12
星期 從01到07,代表星期一到星期日
*號表示"每" ,如每天執(zhí)行,就在第三欄填*號
--------------------------
所以上例的兩項(xiàng)工作是:
每月1號和15號檢查/home 磁盤
每小時的第一分執(zhí)行 /home/myhome/printhello 這個文件
查看crontab:crontab -l
刪除crontab:crontab -r
我們就知道該怎么利用php和crontab命令作linux自動執(zhí)行腳本了。
還需要注意什么問題?
如果php中有使用數(shù)據(jù)庫,如oracle等,執(zhí)行腳本中還需export oracle的環(huán)境設(shè)置。因?yàn)閏ron下的腳本執(zhí)行的用戶都是在沒登陸狀態(tài)下執(zhí)行的,少了很多系統(tǒng)里設(shè)置的環(huán)境變量的值,在連接數(shù)據(jù)庫的時候會出問題。
新聞熱點(diǎn)
疑難解答
圖片精選