2018/03/27 每日一个Linux命令 之 cron
Cron 用于配置定时任务。
--
环境为 Ubuntu16-04
--
先说说怎么配置一个简单的定时任务。直观的可以看到效果。
之前在网上查找资料,对Shell编程不熟悉的实在是很头疼,走了不少弯路,但是这个又是是比较重要的命令。
先明白Cron的结构,Cron是一个[守护程序]用于在指定的时间内执行行程类的任务,每一个用户都有一个Crontab文件,执行计划。相同的,系统也有一个 Crontab.
--
1 2 | 创建一个定时任务 crontab -e |
当你输入指令时,会出现下面的界面,我们直接向下看最后一行
我们的定时任务,就是写在这下面的
1 2 3 4 | 写一个定时任务,先不用明白它是什么意思 # m h dom mon dow command * * * * * date >> /home/vagrant/time.log |
1 2 | 重启Cron服务 sudo service cron restart |
之后在你的家目录下会发现多了一个time.log文件,里面会每隔一分钟新增一条当前时间,也就是这个计划任务的含义
1 2 3 4 5 6 7 8 9 10 11 | vagrant@lims2:~$ tail -f time.log Tue Mar 27 05:57:01 UTC 2018 Tue Mar 27 05:58:01 UTC 2018 Tue Mar 27 05:59:01 UTC 2018 Tue Mar 27 06:00:01 UTC 2018 Tue Mar 27 06:01:01 UTC 2018 Tue Mar 27 06:02:01 UTC 2018 Tue Mar 27 06:03:01 UTC 2018 Tue Mar 27 06:04:01 UTC 2018 Tue Mar 27 06:05:01 UTC 2018 Tue Mar 27 06:06:01 UTC 2018 |
--
现在来详解下这个计划任务
1 2 | # m h dom mon dow command * * * * * date >> /home/vagrant/time.log |
在你成功设置好了自己的计划任务时候,也就会理解它的作用
仔细看其中的参数
# m h dom mon dow command
m 分钟 0-59
h 小时 0-23
dow 天1-31
mon 月 1-12
dow 星期 1-6 0表示星期天
command 就是要执行的命令
--
直接看可能太不容易理解了。
举几个例子就会明白
1: 每1分钟执行一次command
命令:* * * * * command
2:每小时的第3和第15分钟执行
命令:3,15 * * * * command
3:在上午8点到11点的第3和第15分钟执行
命令:3,15 8-11 * * * command
4:每隔两天的上午8点到11点的第3和第15分钟执行
命令:3,15 8-11 */2 * * command
5:每个星期一的上午8点到11点的第3和第15分钟执行
命令:3,15 8-11 * * 1 command
6:每晚的21:30重启smb
命令:30 21 * * * /etc/init.d/smb restart
7:每月1、10、22日的4 : 45重启smb
命令:45 4 1,10,22 * * /etc/init.d/smb restart
8:每周六、周日的1 : 10重启smb
命令:10 1 * * 6,0 /etc/init.d/smb restart
9:每天18 : 00至23 : 00之间每隔30分钟重启smb
命令:0,30 18-23 * * * /etc/init.d/smb restart
10:每星期六的晚上11 : 00 pm重启smb
命令:0 23 * * 6 /etc/init.d/smb restart
11:每一小时重启smb
命令:* */1 * * * /etc/init.d/smb restart
12:晚上11点到早上7点之间,每隔一小时重启smb
命令:* 23-7/1 * * * /etc/init.d/smb restart
13:每月的4号与每周一到周三的11点重启smb
命令:0 11 4 * mon-wed /etc/init.d/smb restart
14:一月一号的4点重启smb
命令:0 4 1 jan * /etc/init.d/smb restart
15:每小时执行/etc/cron.hourly目录内的脚本
命令:01 * * * * root run-parts /etc/cron.hourly
--
里面包含了很多常用的Cron,需要时在回来补充。
关于Cron,还有许多的用法,在之后学习和工作中有理解的话在回来补充。
--
参考:
https://www.cnblogs.com/shuaiqing/p/7742382.html
https://www.linuxidc.com/Linux/2013-05/84770.htm
--
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
· Linux系统下SQL Server数据库镜像配置全流程详解
· 现代计算机视觉入门之:什么是视频
· 你所不知道的 C/C++ 宏知识
· 不到万不得已,千万不要去外包
· C# WebAPI 插件热插拔(持续更新中)
· 会议真的有必要吗?我们产品开发9年了,但从来没开过会
· 【译】我们最喜欢的2024年的 Visual Studio 新功能
· 如何打造一个高并发系统?