crontab用法

crontab是Linux下的定时任务工具,能够定期执行指定操作,需要在某个时间反复执行的任务,比如备份就需要用到crontab,帮助管理员定时完成备份操作。执行crontab -e命令就能开始编辑定时任务了,第一次执行需要选择编辑器,比如nano、vim等编辑工具,在之后也可以通过select-editor命令重新选择编辑工具。

吐槽:Debian下的默认编辑工具为nano,现在使用起来十分不习惯,在最开始更倾向用nano是因为操作上更符合Windows的习惯,看到各种建议用vim忍着别扭习惯了vim,现在开始不习惯nano了。

crontab的日期格式为:

分 时 日 月 周
分的合法值:1-60
时的和法制:1-12
日的合法值:1-31
月的合法值:1-12
周的合法值:0-6(0为星期天)

可以通过例子来说明,

0 0 * * * 每天零点执行一次
1 5 2 * * 每月二号五点一分执行
1 5 2 5 * 每年五月二号五点一份执行
1 * * * * 每一秒执行一次
1 1-5 * * 每天一点到五点的1分执行一次
1 1,4, 8,11 * * 每天1点、四点、八点、十一点的一分执行一次
0 1 1 */2 * 从下个一号开始,每两个月的1点开始执行(这里的单位为必填)

这些例子就已经覆盖了所有的用法,这些用法之间是一起使用的,比如某个时间段每隔多久一次。crontab -u username,能让crontab以username的身份运行指定命令,解决环境变量断问题。比如crontab -u root,就能以root的身份运行,当然以root身份运行最简单的方式是sudo crontab -e,使用root权限可以进行一些系统级命令的操作,比如:

0 0 1 5 * shutdown now

就能在五月一号零点关机。对于初学者,可以去谷歌搜一些在线生成crontab指令的网站,帮助自己理解crontab的使用。

发表评论

电子邮件地址不会被公开。 必填项已用*标注