写这篇文章之前 我在网上搜了好多 crontab的用法 有那种 每周 每天 每月什么的
但是我想要的需求就是一个简单执行sh 然后就足够了没那么复杂 所以我自己来写一篇
其实需求就是 docker 日志很多 需要 每周 定时去清理一下 因为测试服务器只有40g
昨天也应为磁盘满了 k8s 调度失败了
核心点 找出docker 删除日志的命令
echo y | docker system prune -a (不需要输入y)
然后找台服务器 在root 目录下 vi deleteDockerLog.sh
>> /root/test.txt是输出当文件里 为了做单元测试
然后在当前目录下touch test.txt
下面要crontab -e
增添任务
* * * * * /root/deleteDockerLog.sh --- * * * * * 是每分钟执行一次
查看任务执行 执行list crontab -l
最重要的一步就是更改sh权限 不然无法执行
chmod +x ./deleteDockerLog.sh
更改后 发现deleteDockerLog变成了绿色
然后查看 test.txt的内容
cat test.txt
发现执行成功就先清空定时任务
crontab -r
此时删除 >> test.txt
重新加载定时任务
crontab -e
30 17 * * 5 /root/deleteDockerLog.sh
查询定时任务 crontab -l
更改成每周5 17.30 执行
查询定时任务时间网站https://tool.lu/crontab/
总结: 命令有 crontab -l 查看在执行的定时任务 crontab -r 删除所有定时任务 crontab -e 增添定时任务