簡單介紹
crontab是一個用於設置週期性被執行的任務的工具。比如定時發送短信,定時清理日誌等
Crontab命令
crontab -e #編輯當前用戶的定時任務
crontab -l #查看當前用戶的定時任務列表
crontab -r #刪除當前用戶的定時任務
crontab -u lisi # 設定lisi用戶的crontab服務
Crontab 字段
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | | .---- executed command
# | | | | | | .---- executed file
# | | | | | | |
# * * * * * /bin/php /home/project/hello.php
Crontab 案例
#每分鐘執行一次
* * * * * /bin/php /home/project/hello.php
#每兩分鐘執行一次
*/2 * * * * /bin/php /home/project/hello.php
#每小時執行一次
* */1 * * * /bin/php /home/project/hello.php
#每晚的21:30執行
30 21 * * * /bin/php /home/project/hello.php
#每月1號,3號,15號,15點30執行
30 15 1,3,15 * * /bin/php /home/project/hello.php
#每月1號到10號 15點30執行
30 15 1-10 * * /bin/php /home/project/hello.php
#晚上11點到早上7點 每小時執行一次
0 23-7/1 * * * /bin/php /home/project/hello.php
# 每小時的第15和第30分鐘執行
15,30 * * * * /bin/php /home/project/hello.php
#每天18:00到23:00之間每隔30分鐘執行
*/30 18-23 * * * /bin/php /home/project/hello.php
#星期六的10:00執行
0 10 * * 6 /bin/php /home/project/hello.php
#在每隔2天的上午8點和11點的第3和第15分鐘執行
3,15 8-11 */2 * * /bin/php /home/project/hello.php
#十月一號的12點執行
0 12 1 10 * /bin/php /home/project/hello.php
Crontab小結
特殊字符含義:
星號*:表示所有可能的值,可以理解爲每。
逗號,:用逗號隔開的值表示一個列表範圍,如1,2,3 * * * *每天每小時的第一、第二、第三分鐘。
中槓-:用中槓隔開的值表示一個數值範圍,如1-10 * * * *每天每小時的1到10分鐘。
正斜線/:指定執行任務的間隔頻率,如 0 10-18/2 * * *每天的十點到十八點間隔2小時執行。