当前位置:主页 ->服务器技术 - Linux/unix - Linux命令 - ->谈谈:linux下怎么来利用crontab实现计划任务非常有用
文章详细内容

谈谈:linux下怎么来利用crontab实现计划任务非常有用

摘要:crontab是linux下常用的的,用来设置周期性执行命令的工具。利用这个工具,可以帮助我们制定计划任务,对于系统管理员来说,非常有用。开发程序中,我也常用这个工具在凌晨定时备份数据库,程序代码等。...
转载请注明来源:谈谈:linux下怎么来利用crontab实现计划任务非常有用

crontab是linux下常用的的,用来设置周期性执行命令的工具。利用这个工具,可以帮助我们制定计划任务,对于系统管理员来说,非常有用。开发程序中,我也常用这个工具在凌晨定时备份数据库,程序代码等。

命令参数说明

crontab -[ler]
  • l:list,列出计划任务
  • e:edit,编辑计划任务
  • r:remove,移除所有计划任务

命令测试

1、编辑计划任务

crontab -e

编辑计划任务,其实就是编辑一个计划任务的文件,一行一个计划任务。

每行的格式如下:

# m h dom mon dow command

  • m:minute 分钟 (0-59)
  • h:hour 小时 (0-23)
  • dom:日 (1-31)
  • mon:month 月 (1-12)
  • dow:周 (0-7,其中0和7都代表星期天)
  • command:执行的命令

时间的最小单位是分钟,为了测试出结果,我使用每分钟将当前时间保存到/home/text.txt下来进行测试:

*/1 * * * * date > /home/text.txt

等待一分钟,检查下/home/text.txt文件,如果有看到时间就成功了。除了*号和/符号还有其它符号来设定时间:

符号 含义
*(星号) 表示什么时候都可以
,(逗号)
如果有多个时段,用逗号分开,例如我想每小时的30分和59分执行命令
30,59 * * * * date > /home/text.txt
-(减号)
一个时间段内执行任务,例如每小时的3-10分执行命令
3-10 * * * * date > /home/text.txt
/(斜线)
每隔多少时间就执行一次命令,例如上例
*/1 * * * * date > /home/text.txt
就是每隔1分钟执行一下命令

2、查看任务列表

crontab -l

这个命令可以查看计划任务列表,其实就是查看任务文件了。

3、删除计划任务

crontab -r

这个命令建议不要用,这个命令会删除系统上的所有计划任务,我曾在服务器上误删除了一次,结果花了不少时间恢复。建议通过crontab -e编辑,直接删除不需要的那一行,就可以了。

友情提示:

执行的命令中的路径建议使用全路径,这样一定不会有问题。例如我上例就是直接使用/home/text.txt;

在ubuntu下,如果没有选择默认的编辑器,则会提示选择编辑器,如下:

ubuntu计划任务选择编辑器

ubuntu计划任务选择编辑器

如果需要重新选择编辑器,运行命令select-editor就可以了 。我习惯用vim这个编辑器。

转载请注明来源:谈谈:linux下怎么来利用crontab实现计划任务非常有用
http://www.php1.cn/Content/TanTan_-linux_XiaZenMeLaiLiYong_crontab_ShiXianJiHuaRenWuFeiChangYouYong.html
关注 第一PHP社区 微信公众号,获取更多最新PHP技术分享

  • 打酱油

  • 震惊

  • 呵呵


  • 鄙视
最新评论
  • 1楼 From: 5 个月前发表 IP:203.*56.234.*26
    河南phper欢迎+群233415606
关注 第一PHP社区 微信公众号
PHP1.CN | 中国最专业的PHP中文社区 | PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | PHP论坛
Copyright © 1998 - 2015 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社区 版权所有
快云为本站提供专业云计算服务