linu计划任务

计划任务

定时执行程序,实现脚本中的功能,在linux是通过etc/init.d/crond这个服务来实现计划任务

crontab命令格式

新建www用户的crontab配置文件(crontab -u www -e)

指定用户: -u
编辑当前的crontab文件 -e
显示当前的crontab配置文件 -l
删除当前的crontab配置文件 -r

定义crontab命令
分     小时    日     月   星期   命令
0-59   0-23   1-31  1-12  0-6 
特殊符号:* 范围的所有数字,/ 每 ,- 范围 , ‘,’集合
* * * * * /usr/local/sftp/packsftp/upload/script/crontab/crontab.php /usr/local/php/bin/php > /dev/null
示例
每隔30分钟,每天晚上的凌晨3点-5点:*/30  3-5  *  *  *  
每30分钟执行一次任务   */30 * * * * 
注意事项
*/30 * * * *  /usr/local/php/bin/php  /usr/local/sftp/packsftp/upload/script/crontab/crontab.php(linux服务器路径)  > /dev/null
PHP代码的运行方式
WEB服务器(nginx/apache)
Cli cgi         php   a.php
Swoole      内置服务器
Symfony     内置服务器 
案例实战
定义PHP执行环境
#!/usr/bin/env php
修改文件夹权限
Chown -R www:www /www/tasks
Chmod -R 744 /www/task
编写crontab配置文件
Crontab -u www -e
*/1 * * * * /usr/local/php/bin/php /www/task/demo.php > /dev/null   没有输出
*/1 * * * * /usr/local/php/bin/php /www/task/demo.php >  /www/task/demo.log 定义输出路径
查看生成的配置文件:
/var/spool/cron/用户名
输出的文件要写权限:

产生了错误/记录日志:通过PHP代码实现
服务重启
修改了crontab配置文件不需要重启
Service crond  restart
计划任务取消
Crontab -u www -e  删除需要取消的任务
Crontab -u www -r  删除计划任务

你可能感兴趣的:(linu计划任务)