archlinux 定时任务

124 篇文章 9 订阅

Crontab 格式

crontab 的基本格式是:

星期 命令


分 值从 0 到 59。
时 值从 0 到 23。
日 值从 1 到 31。
月 值从 1 到 12。
星期 值从 0 到 6, 0 代表星期日。
执行的命令

空格用来分开字段,要微调你的时间表,也可以用下面特殊字符来设定范围:

符号描述
*通配符,表示所有支持的时间值
,用逗号分隔多个时间
-连接两个数值,给出一个范围
/指定一个周期或频率

例如,下面一行:

*/5 9-16 * 1-5,9-12 1-5 ~/bin/i_love_cron.sh

*/5 9-16 * 1-5,9-12 1-5 ~/bin/i_love_cron.sh

用|分割方便理解,实际使用时没有|
*/59-16 * 1-5,9-121-5~/bin/i_love_cron.sh


将会在周内(周一到周五)从早上 9 点到下午 4 点 55 分,每隔 5 分钟执行一次脚本 i_love_cron.sh,夏季除外(6月、7月和8月)。

此外,crontab 还有一些特殊的关键字。

@reboot 启动时
@yearly 每年一次
@annually (@yearly)
@monthly 每月一次
@weekly 每周一次
@daily 每天一次
@midnight (午夜,同 @daily)
@hourly 每小时一次

例如:

@reboot ~/bin/i_love_cron.sh

将在启动时执行脚本 i_love_cron.sh。

安装cronie

如果你运行crontab 时报错:command not found: crontab
那么先安装一下cronie即可解决。

sudo pacman -S cronie

启动一下服务

#设置开机启动
sudo systemctl enable cronie.service
#立即启动
sudo systemctl start cronie.service

发现定时任务不执行怎么办?

看一下你的服务是否开启了!看一下你的服务是否开启了!看一下你的服务是否开启了!

重要的事情说三遍。我就是因为忘记启动服务了,白白浪费了1个多小时,我一直以为是我写的格式不对!🤣 知道真相的我大腿拍肿了

systemctl status cronie.service
#设置开机启动
sudo systemctl enable cronie.service
#立即启动
sudo systemctl start cronie.service

基本命令

Crontabs 绝不应该被直接编辑;用户应该使用 crontab 程序来处理他们的 crontabs。为了能够访问这个命令,用户必须添加到 users 用户组(见 gpasswd 命令)。

要查看 crontabs,用户应该运行下面的命令:

$ crontab -l

要编辑 crontabs,可以使用:

$ crontab -e

Note: 默认情况下,crontab 命令使用 vi 编辑器。可以通过export EDITOR 或 VISUAL 来配置,或通过这样的命令直接指定编辑器:EDITOR=vim crontab -e

要移除 crontabs, 可以使用:

$ crontab -r

如果用户有一个保存好的 crontab 想要用它完全覆盖旧的 crontab,可以使用:

$ crontab saved_crontab_filename

想从命令行(Wikipedia:stdin)覆盖一个 crontab,使用:

$ crontab - 

想编辑别的用户的 crontab, 使用root运行下面的命令:

# crontab -u username -e

同一个格式(在命令后追加 -u username)也可以用来列出或删除 crontabs。

示例

三月份 周一到周五 每1分钟执行一次./runonce.sh

*/1 * * mar mon-fri ./runonce.sh

每分钟执行一次~/restartTomcat.sh

*/1 * * * * sh /home/itkey/restartTomcat.sh

凌晨1点10分执行一次操作

10 1 * * * sh /home/apex/restartTomcat.sh

参考

https://wiki.archlinux.org/index.php/Cron_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)#Crontab_%E6%A0%BC%E5%BC%8F

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值