Linux 之 crontab 使用
定时任务
任务调度的crond常驻命令
crond 是linux用来定期执行程序的命令。当安装完成操作系统之后,默认便会启动此任务调度命令。crond命令每分锺会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。而linux任务调度的工作主要分为以下两类:
1、系统执行的工作:系统周期性所要执行的工作,如备份系统数据、清理缓存
2、个人执行的工作:某个用户定期要做的工作,例如每隔10分钟检查邮件服务器是否有新信,这些工作可由每个用户自行设置。
分钟 | 小时 | 天数 | 月数 | 周数 |
minute | hour | day | month | week |
每个字段代表的含义如下:
Minute 每个小时的第几分钟执行该任务
Hour 每天的第几个小时执行该任务
Day 每月的第几天执行该任务
Month 每年的第几个月执行该任务
DayOfWeek 每周的第几天执行该任务
对于程序员来说最关注的莫过于使用示例,通过示例可以一目了然的掌握如何使用定时任务
注意:在 crontab 命令中只有 “绝对路径”,不存在相对路径,故执行任何命令都需要写绝对路径
1. 每小时的第5分钟执行 ls 命令
5 * * * * ls
2. 每5分钟执行 ls 命令
*/5 * * * * ls
3. 每天的 4:30 执行 ls 命令
30 4 * * * ls
4. 每小时执行 ls 命令
0 * * * * ls
5. 每天执行 ls 命令
0 0 * * * ls
6. 每周执行 ls 命令
0 0 * * 0 ls
7. 每年执行 ls 命令
0 0 1 1 * ls
8. 每月 8号 的 7:20 执行 ls 命令
20 7 8 * * ls
9. 每年的 6月28号 5:30 执行 ls 命令
30 5 28 6 * ls
10. 每星期日的 6:30 执行 ls 命令
30 6 * * 0 ls
注意:0 表示星期天, 1 表示星期一,以此类推;也可以用英文来表示,sun 表示星期天,mon 表示星期一等。
11. 每月 10号和20号 的 4:30 执行 ls 命令
30 4 10,20 * * ls
注意:" , " 用来连接多个不连续的时间
12. 每天 8~11点 的第 25 分钟执行 ls 命令
25 8-11 * * * ls
注意:" - " 用来连接连续的时间
13. 每个月中每隔 10天 的 5:30 执行 ls 命令
30 5 */10 * * ls
即:每月的 1、11、21、31日 在 5:30 执行一次 ls 命令
14. 每天 4:30 以 root 身份执行 /etc/cron.daily 目录中的所有可执行文件
30 4 * * * root run-parts /etc/cron.daily
15. 真实使用中,一般都是执行自己的可执行文件
0 * * * * cd /data/sync-data/mdd;/data/GoProjects/bin/go-elastic-index -config=mdd.toml >> mdd.log 2>&1
上面命令译为:每小时执行一次,首先通过 cd 命令进入到指定绝对目录下,之后使用绝对路径找到可执行文件正常执行即可。对应的 mdd.toml 和 mdd.log 都是在 cd 到的目录下,此时就不需要全部写全目录了,如果不使用 cd 命令,最终的写法如下:
0 * * * * /data/GoProjects/bin/go-elastic-index -config=/data/sync-data/mdd/mdd.toml >> /data/sync-data/mdd/mdd.log 2>&1
最后命令
crontab -l 查看定时任务
crontab -l -u jp 列出用户jp的所有调度任务
crontab -e 编辑定时任务
crontab -r 删除所有的定时任务
Linux 之 crontab 使用的更多相关文章
- 【转】PHP计划任务:如何使用Linux的Crontab执行PHP脚本
转:https://www.centos.bz/2011/03/auto-run-task-crontab/ 我们的PHP程序有时候需要定时执行,我们可以使用ignore_user_abort函数或是 ...
- 如何让linux定时任务crontab按秒执行
如何让linux定时任务crontab按秒执行? linux定时任务crontab最小执行时间单位为分钟如果想以秒为单位执行,应该如何设置呢?思路 正常情况是在crontab中直接定义要执行的任务,现 ...
- Linux shell crontab expdp 定时任务逻辑备份 定时删除旧文件
点击进入:Window bat expdp 定时任务逻辑备份 定时删除N天前的旧文件 创建sh脚本 [oracle@localhost ~]$ vi logicbackup.sh 添加脚本内容 #!/ ...
- 如何使用Linux的Crontab定时执行PHP脚本的方法
我们的PHP程序有时候需要定时执行,我们可以使用ignore_user_abort函数或是在页面放置js让用户帮我们实现.但这两种方法都不太可靠,不稳定.我们可以借助Linux的Crontab工具来稳 ...
- linux定时任务crontab
今天在执行mysql定时任务语句时候问了很多大拿,都建议我不要随便在生产环境下写定时任务这样的语句,有的说会有延时,那样的话就不准了,有的说在.系统时间和本地时间不一致怎么办?后来就建议我用linux ...
- Linux 命令 - crontab: 任务调度
cron 是一个 Linux 下的定时执行工具,可以在无需人工干预的情况下运行作业.守护进程 cron 会读取 crontab 文件,根据配置在指定的时间执行任务.contab 命令用来添加.删除.显 ...
- linux使用crontab -e 遇到No space left on device
今天用linux的crontab -e编辑定时脚本的时候.遇到No space left on device的错误. 网上找了半天终于知道原因了,昨天晚上我的一个任务因为路径没写对,到时crontab ...
- PHP计划任务:如何使用Linux的Crontab执行PHP脚本
我们的PHP程序有时候需要定时执行,我们可以使用ignore_user_abort函数或是在页面放置js让用户帮我们实现.但这两种方法都不太可靠,不稳定.我们可以借助Linux的Crontab工具来稳 ...
- linux定时任务crontab的设置
linux定时任务crontab的设置http://www.blogjava.net/freeman1984/archive/2010/09/23/332715.html vi /etc/cronta ...
- CentOS Linux使用crontab运行定时任务详解
参考博文: (总结)CentOS Linux使用crontab运行定时任务详解
随机推荐
- 【第六课】Nginx常用配置下详解
目录 Nginx常用配置下详解 1.Nginx虚拟主机 2.部署wordpress开源博客 3.部署discuz开源论坛 4.域名重定向 5.Nginx用户认证 6.Nginx访问日志配置 7.Ngi ...
- python中的and和or用法
在python中and和or返回的值并不是True和false这么简单.虽然他们看上去和c++中的&&和||有些相似.在了解and和or之前,我们先要了解python中的True和Fa ...
- Spring Boot(十二):Spring Boot 如何测试打包部署
有很多网友会时不时的问我, Spring Boot 项目如何测试,如何部署,在生产中有什么好的部署方案吗?这篇文章就来介绍一下 Spring Boot 如何开发.调试.打包到最后的投产上线. 开发阶段 ...
- 移动端jq及zepto事件绑定
最近做移动端网页,用到了zepto.js , 其大致用法跟 jquery 差不多,但是在时间绑定的时候被困了好久的坑. 这里说的主要是给未来元素绑定事件.未来元素:这里指的是通过 ajax 请求得到数 ...
- Js_封装JQ库为插件
//在jQuery匿名函数中,采用jQuery.extend();方法创建jQuery插件 //在jQuery匿名函数中, 采用对象.属性 = 函数的方式创建jQuery插件 (function ($ ...
- Mvc4_语法基础介绍
@model MvcApplicationTest.Models.User @{ ViewBag.Title = "Index"; } <script type=" ...
- Unity光照与渲染设置学习笔记
学习了一下unity中有关光照和渲染的一些设置,现在才明白之前遇到的一些问题只是没有正确设置而已. unity不同版本的光照设置会有一些差异,而且可以调节的参数非常多,这里只记录一些重要的参数和使用方 ...
- python 游戏(猜数字)
1. 构造猜数字核心函数 import random def guess_core(guess_min,guess_max,guess_counrt): '''猜数字核心判断函数 :param gue ...
- raft--分布式一致性协议
0. 写在前面的话 一直从事分布式对象存储工作,在分布式对象存储的运营,开发等工作中,数据一致性是至关重要的.因此想写一篇关于分布式一致性的文章.一来,可以和大家分享.二来,可以提高自己的文字提炼能力 ...
- java实验报告二
一.实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计模式 二.实验步骤 (一)单元 ...