crontab 周日_linux中的crontab定时任务

本文介绍了如何在Ubuntu 20.04系统中使用crontab进行定时任务设置,包括命令格式、文件格式、实例解析以及注意事项。讲解了如何设置每小时、每天、每周的特定时间执行命令,并提醒注意环境变量的配置问题。还推荐了一个在线工具crontab-generator.org帮助生成正确的命令格式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

软硬件环境

  • ubuntu 20.04

前言

crontablinux系统下自带的定时任务工具。通过crontab命令,我们可以在固定的间隔时间执行指定的系统指令或shell脚本。时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合。这个命令非常适合周期性任务如数据备份等工作。

命令格式

crontab [-u user] file crontab [-u user] [ -e | -l | -r ]

其中

  • -u user:用来设定某个用户的crontab服务
  • file:命令文件的名字,表示将file作为crontab的任务列表文件并载入crontab
  • -e:编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件
  • -l:显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容
  • -r:从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件

crontab文件格式

f357cc01e773727c19e478afff1bad1a.png

crontab

上图是crontab的文件格式说明

  • 第1列分钟0~59
  • 第2列小时0~23
  • 第3列日1~31
  • 第4列月1~12
  • 第5列星期0~7(0和7表示星期天)
  • 第6列要运行的命令

第一次操作crontab时,系统会要求选择编辑器

f81c95b3fc20056bc0b2e90530b32ccb.png

crontab

如果后续想要修改编辑器,可以使用命令select-editor

一些实例

每小时的第3和第15分钟执行

3,15 * * * * command

在上午8点到11点的第3和第15分钟执行

3,15 8-11 * * * command

每隔两天的上午8点到11点的第3和第15分钟执行

3,15 8-11 */2  *  * command

每周一上午8点到11点的第3和第15分钟执行

3,15 8-11 * * 1 command

每晚的21:30重启samba

30 21 * * * /etc/init.d/smb restart

每月1、10、22日的4:45重启samba

45 4 1,10,22 * * /etc/init.d/smb restart

每周六、周日的1:10重启samba

10 1 * * 6,0 /etc/init.d/smb restart

每天18:00至23:00之间每隔30分钟重启samba

0,30 18-23 * * * /etc/init.d/smb restart

每星期六的晚上23:00重启samba

0 23 * * 6 /etc/init.d/smb restart

每一小时重启samba

* */1 * * * /etc/init.d/smb restart

晚上11点到早上7点之间,每隔一小时重启samba

0 23-7 * * * /etc/init.d/smb restart

注意事项

有时我们创建了一个crontab,但是这个任务却无法自动执行,而手动执行这个任务却没有问题,这种情况一般是由于在crontab文件中没有配置环境变量引起的。尽量在脚本中涉及文件路径时写全局路径,使用其它环境变量时,可以通过source命令引入环境变量。

如果对crontab格式不是很熟悉的话,这里提供一个在线的工具,https://crontab-generator.org/, 它可以帮你自动生成crontab命令的格式,非常实用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值