1安装crontab:
yum install crontabs
说明:
service crond start //启动服务
service crond stop //关闭服务
service crond restart //重启服务
service crond reload //重新载入配置
查看crontab服务状态:service crond status
手动启动crontab服务:service crond start
查看crontab服务是否已设置为开机启动
chkconfig crond on
2使用创建新任务
1、编辑命令
创建两个文件
这里是php改变txt的内容
强调: 所有路径都必须给绝对路径!!! 不管是执行文件本身路径,还是文件里面填写的其他路径!!!
手动执行正常可以改变
但是!!!!!!!!!!!!!!!
自动任务执行,txt始终不变!!!!
原因在于,自动执行任务没有加载环境变量配置,不知道这个txt位置,所以txt文件必须给绝对路径!!!!!!
test.php
<?php
$fp = fopen("/var/www/html/WexinToken/test/test.txt","w");
fwrite($fp, date('Y-m-d H:i:s')."****"."\r\n");
fclose($fp);
?>
给与test.txt操作权限
sudo chmod -R 777 test.txt
创建一个新任务,每一分钟调用一次test.php,修改test.txt
crontab -e
按 i 进入插入模式
输入一个新命令
(每一分钟执行这个php命令)
*/1 * * * * /usr/bin/php /var/www/html/WexinToken/test/test.php
退出保存
1按 Esc
2按:
3按wq
4回车
查看正在运行的定时任务
crontab -l
重新载入配置文件或者重启服务以开始执行
service crond restart
如果想要删除配置,执行
crontab -r
no crontab for root 解决方案
主要原因是由于这个liunx服务器 第一次使用 crontab ,还没有生成对应的文件导致的,执行了 编辑(crontab -e)后 就生成了这个文件
[root@localhost ~]# crontab -l
no crontab for root
这个问题非常简单,同样在 root 用户下输入 crontab -e
1 按 Esc
2按:
3按wq
4回车
在输入 crontab -l 就没有问题了