2020-06-17 15:30:33
这里的伙伴大多数做客户端开发的,可能对服务端相关的内容关注的相对少一些。 crontab 是这样一个工具,他能够根据你给出的配置在指定的时间执行任务。比如定期删除过期的日志文件(很多服务端环境,会生成大量的日志文件,在你不经意间就会把你的硬盘填满)。当然,它的应用不仅限于服务端,对于自己本地的电脑来说,也有它的用处。
crontab 是 Unix 系统的标配,几乎我们常见的大多数类 Unix 系统都自带 crontab, 包括 MacOS。 Crontab 名字的来源是 chronos – 一种极客们对时间的叫法。 关于它的更多内容,大家可以参考 Wikipedia 上面的描述:http://en.wikipedia.org/wiki/Cron。
简单做了介绍之后,咱们来看看怎么使用。 大家可以在自己电脑的命令行中输入:
$ crontab -l
这个命令, 然后你应该会看到类似的输出:
crontab: no crontab for xxx
这个命令是用于列出你电脑上已有的计划任务,因为我们现在还没有指定任何计划任务,所以这个输出就像上面那样,告诉我们没有计划任务。 如果想添加自己的计划任务,可以输入这个命令:
$ crontab -e
这个命令会用 vi 打开一个命令行编辑器,你可以在这里编辑计划任务的描述。 crontab 描述文件中每一行代表一个任务,每一行的格式如下:
* * * * * rm /home/someuser/tmp/*
前面 5 个星号代表时间设置,从左到右每个星号的位置分别对应
分钟(0-59) 小时(0-23) 每月中的天(1-31) 每年中的月(1-12) 每周中的星期几(0-6) 0 代表星期日
每个星号的位置,可以是星号本身,也可以是具体的数字。 如果是星号本身,代表不加限制。 如果是数字,代表指定的时间。 举几个例子:
* * * * * // 5个都是个星号,代表每分钟都会执行。
30 * * * * // 每到 30分的时候执行一次,也就是每小时执行两次。
* 18 * * * // 每天的 18 点执行一次。
* */2 * * * // 每隔 2 小时执行一次, */ 是间隔时段的表示法。
以上是 crontab 时间设置个几个常用示例, 只要按照我们上述的每隔时间点的规则来使用,几乎可以满足我们绝大部分计划任务的需求。
在时间配置之后, 就是我们要执行的脚本文件,比如我们想在每天早上 8 点的时候清空机器上的临时文件,就可以这样配置:
* 8 * * * rm /home/someuser/tmp/*
每天 8点的时候,就会执行后面的 rm 命令, 删除临时文件夹中的文件。 后面的这个命令行内容,可以是任何的 Shell 命令,包括 pipe 操作,比如:
* 8 * * * rm /home/update.sh > /var/log/update.log
这个配置会在每天 8 点的时候, 执行一个叫做 update 的脚本, 并将日志输出流重定向到 update.log 文件中。 这时我们的命令行界面应该是这样的:
编辑完成后, 按下 Esc 键, 然后输入 :wq(代表保存并退出,这个是 vi 文本工具的使用方法), 在命令行左下角是下面图片中的状态的时候,按下回车键:
这样就保存了我们刚刚编辑的任务列表,我们再输出 crontab -l 命令,可以看到任务被成功添加了。
这样就 ok 了。剩下的事情就交给 crontab 来处理了。
结语
crontab 是 Unix 系统中标配的计划任务工具,它的原理并不复杂,crontab 是一个守护进程,不停的检测它的任务列表是否符合执行条件,如果符合,就执行任务。这里跟大家聊的都是 crontab 比较常规的用法,更详细的文档,大家可以通过 man crontab 命令自行查看。相信它对大家的日常工作还是比较有帮助的。
定时执行任务Crontab的20个例子
05-01
Linux文件查看/编辑方法介绍
07-17
Linux Apache开启gzip压缩提高网页下载速度
07-15
Linux CentOS 7 重置root用户密码
07-12
Linux alias设置指令的别名命令详解
07-18
Linux aumix设置音效装置命令详解
07-05
Linux free显示内存状态命令详解
07-23
Linux kill删除执行中的程序或工作命令详解
07-24
Linux lsmod显示已载入系统的模块命令详解
07-24
Linux screen多重视窗管理程序命令详解
07-05
Linux vsftpd启动,停止,重启脚本
07-23
Linux 的系统服务及其配置
07-07
Linux启动过程详解
07-17
Crontab mysql定时备份
02-19
Linux常用命令介绍
06-30
Ideapad Y450/Y550/Y650 一键影音功能的介绍及应用
07-21
Lenovo settings下载及使用介绍
07-06
Thinkvision LT2934z显示器自带的摄像头使用方法介绍
06-27
Think产品随机预装的McAfee杀毒软件卸载的方法介绍
07-02
Win10回退至Win7或Win8.1的功能介绍
06-24
QmmpLinux音乐播放器中文版 v0.11.2
16.1MB
下载定时关机3000下载
7.12M
下载定时关机助手下载
560KB
下载定时提醒软件(电脑桌面定时提醒工具) v5.7 免费版
2.2M
下载CleanMem(定时清理内存) v2.5 绿色版
3.2M
下载Excel必备工具箱 V12.70 官方版
2.19M
下载dx9.0c(游戏必备驱动)2021 免费版
104.1M
下载minishutoff定时关机软件 v8.3 官方免费版
311K
下载易好用定时关机下载
2.49M
下载Desktopcal桌面日历 v2.2.32.4330
3.42 MB
下载Remind-Me 日历事件提醒软件
6.6M
下载centos 下载
3.85GB
下载visualroute
7.06 MB
下载桌面提醒精灵破解版
3.03 MB
下载