ubuntu下使用crontab定时器
crontab 定时工具(周期性执行的任务列表称为Cron Table),其中每一个任务,被称为Cron Job。
可以,每分钟执行,每小时执行,每天执行,每周执行,每月执行。
检查服务
1.查看任务
jiqing@ubuntu:~/桌面$ sudo crontab -l
no crontab for root
2.查看服务
jiqing@ubuntu:~/桌面$ sudo service cron status
cron start/running, process 1163
jiqing@ubuntu:~/桌面$ sudo service cron restart
cron stop/waiting
cron start/running, process 20296
安装服务
jiqing@ubuntu:~/桌面$ sudo apt-get install cron
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
下列软件包是自动安装的并且现在不需要了:gstreamer0.10-plugins-ugly liba52-0.7.4 libdvdnav4 libdvdread4 libmad0libmp3lame0 libmpeg2-4 libopencore-amrnb0 libopencore-amrwb0 libsidplay1libtwolame0 libx264-142 linux-image-extra-4.4.0-31-generic
Use 'apt-get autoremove' to remove them.
建议安装的软件包:checksecurity exim4 postfix mail-transport-agent
下列【新】软件包将被安装:cron
升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 7 个软件包未被升级。
需要下载 81.0 kB 的软件包。
解压缩后会消耗掉 301 kB 的额外空间。
获取:1 http://cn.archive.ubuntu.com/ubuntu/ trusty/main cron i386 3.0pl1-124ubuntu2 [81.0 kB]
下载 81.0 kB,耗时 1秒 (40.5 kB/s)
正在选中未选择的软件包 cron。
(正在读取数据库 ... 系统当前共安装有 269953 个文件和目录。)
正准备解包 .../cron_3.0pl1-124ubuntu2_i386.deb ...
正在解包 cron (3.0pl1-124ubuntu2) ...
正在处理用于 man-db (2.6.7.1-1ubuntu1) 的触发器 ...
正在处理用于 ureadahead (0.100.0-16) 的触发器 ...
正在设置 cron (3.0pl1-124ubuntu2) ...
cron start/running, process 22657
设置任务
>
是定向输出到文件,如果文件不存在,就创建文件;如果文件存在,就将其清空;一般我们备份清理日志文件的时候,就是这种方法:先备份日志,再用`>`,将日志文件清空(文件大小变成0字节);>>
这个是将输出内容追加到目标文件中。如果文件不存在,就创建文件;如果文件存在,则将新的内容追加到那个文件的末尾,该文件中的原有内容不受影响。
crontab -e
# m h dom mon dow command
*/1 * * * * date >> ~/time.log
每分钟,将执行一次。将日期写入log中。
jiqing@ubuntu:~$ cat time.log
2018年 04月 17日 星期二 17:13:01 CST
2018年 04月 17日 星期二 17:14:01 CST
2018年 04月 17日 星期二 17:15:01 CST
2018年 04月 17日 星期二 17:16:01 CST
2018年 04月 17日 星期二 17:17:01 CST
前5个部分表示何时执行命令,最后一个部分表示执行的命令。每个部分以空格分隔,除了最后一个部分(命令)可以在内部使用空格之外,其他部分都不能使用空格。前5个部分分别代表:分钟,小时,天,月,星期,每个部分的取值范围如下:
分钟 0 - 59
小时 0 - 23
天 1 - 31
月 1 - 12
星期 0 - 6 0表示星期天
除了这些固定值外,还可以配合星号(*),逗号(,),和斜线(/)来表示一些其他的含义:
星号 表示任意值,比如在小时部分填写 * 代表任意小时(每小时)
逗号 可以允许在一个部分中填写多个值,比如在分钟部分填写 1,3 表示一分钟或三分钟
斜线 一般配合 * 使用,代表每隔多长时间,比如在小时部分填写 */2 代表每隔两分钟。所以 */1 和 * 没有区别,*/2 可以看成是能被2整除的任意值。
以下是一些例子(省略了命令部分):
* * * * * # 每隔一分钟执行一次任务
0 * * * * # 每小时的0点执行一次任务,比如6:00,10:00
6,10 * 2 * * # 每个月2号,每小时的6分和10分执行一次任务
*/3,*/5 * * * * # 每隔3分钟或5分钟执行一次任务,比如10:03,10:05,10:06
jiqing@ubuntu:~$ tail -f time.log
2018年 04月 17日 星期二 17:18:01 CST
2018年 04月 17日 星期二 17:19:01 CST
2018年 04月 17日 星期二 17:20:01 CST
2018年 04月 17日 星期二 17:21:01 CST
2018年 04月 17日 星期二 17:22:01 CST
2018年 04月 17日 星期二 17:23:01 CST
2018年 04月 17日 星期二 17:24:01 CST
2018年 04月 17日 星期二 17:25:01 CST
2018年 04月 17日 星期二 17:26:01 CST
2018年 04月 17日 星期二 17:27:01 CST
2018年 04月 17日 星期二 17:28:01 CST
可以通过tail -f实时监控文本日志。
若在crontab中写了如下的一个任务:
0 6 * * * echo “Good morning.“//注意单纯echo,从屏幕上看不到任何输出,因为cron把任何输出都email到root的信箱了
可以把这个输出重定向到另外一个标准输出文件中,比如说重定向输出到一个txt文件中
0 6 * * * echo “Good morning.” >> /tmp/test.txt
新建一个php任务。
*/1 * * * * php /home/wwwroot/default/test/test.php >> ~/phptime.log
php中的代码,
<?php
echo date('Y-m-d H:i:s')."\n";
?>
jiqing@ubuntu:/home/wwwroot/default/test$ tail -f ~/phptime.log
2018-04-17 17:39:01
2018-04-17 17:40:01
2018-04-17 17:41:01
2018-04-17 17:42:01
有反应哦。
ubuntu下使用crontab定时器相关推荐
- ubuntu下的定时器编写
ubuntu下的定时器编写 一.cron简介 在Linux系统中,计划任务一般是由cron承担,我们可以把cron设置为开机时自动启动.cron启动后,它会读取它的所有配置文件(全局性配置文件/etc ...
- 运维经验分享(三)-- 解决Ubuntu下crontab不能正确执行脚本的问题
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://dgd2010.blog.51cto.com/1539422/1676490 运维 ...
- 【linux】ubuntu下crontab无效解决方法
在Debain的docker中启用crontab,踩了一整天的坑,特地记录一下.Debain和ubuntu差不多,故算在ubuntu下面了. 1.第一个坑,安装crontab apt-get inst ...
- Ubuntu下crontab命令的用法
首先给大家分享一个巨牛巨牛的人工智能教程,是我无意中发现的.教程不仅零基础,通俗易懂,而且非常风趣幽默,还时不时有内涵段子,像看小说一样,哈哈-我正在学习中,觉得太牛了,所以分享给大家!点这里可以跳转 ...
- Mac下使用crontab来实现定时任务
Mac下使用crontab来实现定时任务 说明: 1.Linux和Mac下操作crontab都是一致的 2.配置文件都在/etc/crontab下,如果没有就创建. 3.测试发现直接使用crontab ...
- shell脚本触发java程序支持传参补跑 +crontab定时器+每天生成日期文件_03
文章目录 1. 脚本升级 2. 执行测试 3. 脚本关键词简述 补充案例 上一篇: shell脚本触发java程序支持传参补跑 +crontab定时器_02 https://gblfy.blog.cs ...
- shell脚本触发java程序支持传参补跑 +crontab定时器_02
文章目录 1. 创建定时任务 2. 查看定时任务是否执行 上一篇: shell脚本触发java程序支持传参补跑_01 https://gblfy.blog.csdn.net/article/detai ...
- ubuntu下定时任务的执行
概述 linux系统由 cron (crond) 这个系统服务来控制例行性计划任务.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的. 另外, 由于使用者自己也可以设置计划 ...
- ubuntu下cron不执行的常见问题
cron常用命令: 查看当前执行的任务:crontab -l 编辑:crontab -e 保存:Crtl+x 按提示输入 Y 然后按 回车 键直接保存退出 1.ubuntu下cron打开日志: vi ...
最新文章
- 心得丨如何快速上手疯狂上涨的Python?
- 第三周项目三-输出星号图(4)
- python3.6+RF环境搭建
- python做大型网站_Python中的大型Web应用:一个好的架构
- Pandas知识点-逻辑运算
- 【MyBatis框架】Mybatis开发dao方法第二部分
- 牛客网-《剑指offer》-跳台阶
- LiveLayout
- [转]ListView滚动到底部自动加载数据
- adobe acrobat pro字体很怪,有点发虚,不整齐,调整方法
- 2021-04-02
- 身份证归属地信息查询接口
- 中国鲷鱼养殖产量和捕捞产分析,养殖产业区域集中度高「图」
- KiCad 部分插件安装
- 沟通成本:信任,外包永远的痛——外包实践(65)
- 如何实现Win7远程桌面关机和重启
- 基于servlet+jsp 个人博客系统
- 算法竞赛入门学习(篇一)
- arachni_web显示500,We‘re sorry, but something went wrong.
- 加一行代码,让你的Python的运算速度加快100倍
热门文章
- Matplotlib Tutorial(译)
- 2015 SegmentFault 黑客马拉松记录
- Machine Learning课程 by Andrew Ng
- 42. Vue、React 等前端项目部署,刷新 404 问题解决方案
- Saltstack基本安装部署
- 移动端banner css3(@keyframes )实现
- 《嵌入式系统数字视频处理权威指南》——第1章 现实世界中的视频
- springmvc+batis applicationContext-mybatis.xml 具体说明
- 架构师速成8.3-架构师必须要了解的规则(转)
- RIS镜像中添加网卡和RAID卡驱动方法及实践经验总结