1. 程式人生 > >PHP定時任務執行處理、Crontab定時執行程式,Linux設定定時任務(教程案例)

PHP定時任務執行處理、Crontab定時執行程式,Linux設定定時任務(教程案例)

【第一步】:先寫task.sh指令碼檔案。

【第二步】:設定Crontab定時時間,定時執行task.sh指令碼檔案

【案例一】:每月1號、15號的06:10點,定時備份網站原始碼

【第一步】:先寫youhutong.sh指令碼檔案。

[[email protected] ~]#

[[email protected] ~]# touch youhutong.sh #新建名為,youhutong.sh 的指令碼檔案:

[[email protected] ~]# chmod u+x youhutong.sh #把youhutong.sh變成可執行的指令碼檔案

[
[email protected]
~]# ls #檢視是否新建成功【建立成功下方將會列出檔名】 youhutong.sh [[email protected] ~]# vi youhutong.sh #進入VI編輯器,編輯youhutong.sh檔案 按I鍵進入編輯模式:然後輸入以下內容:
#!/bin/bash

# email : [email protected]

# weburl: http://www.youhutong.com

sdir="/www/web" #這是需要備份網站原始碼所在的目錄

bdir="/www/backup" #這是備份成功後的原始碼存放的目錄

ldir="/www/logs" #這是備份成功後,記錄操作日誌的目錄

[ ! -d $ldir] && mkdir -p $ldir #判斷日誌目錄是否有,沒有就建立

ldir=$ldir/tasklog.log #定義操作日誌記錄檔名

[ ! -d $bdir ] && mkdir -p $bdir #判斷備份原始碼存放目錄是否有,沒有就建立

ft=`date +%Y%m%d%H` #定義備份原始碼後的壓縮包檔名

dfn=$bdir/"mysql_"${ft}.tar.gz #定義備份原始碼後的壓縮包檔名

tar zcvf $dfn $sdir #執行備份

echo -n "webbackup success " >> $ldir && date >> $ldir && exit 0 #成功記錄操作到日誌中
輸入完以上內容後先後按:esc鍵(切換到命令模式) ==> :wq(儲存並退出編輯) ==>回車(執行)

【第二步】:設定Crontab定時時間,定時執行task.sh指令碼檔案

[[email protected] ~]# crontab -e      #進入VI編輯器,編輯crontab
同樣的是按上面編輯指令碼檔案方法做:
寫入以下內容:
10 6 1,15 * * /root/youhutong.sh
[[email protected] ~]# crontab -l      #檢視當前使用者的定時任務(下面就會列出來,有我們寫入的就成功了)
10 6 1,15 * * /root/youhutong.sh
不要這個任務後,可以去編輯刪除掉也可用命令:crontab -r(這是刪除當前使用者所有的定時任務),最好還是通過編輯刪除修改