首页 > 系统相关 >【linux】crontab使用方法

【linux】crontab使用方法

时间:2023-01-09 10:11:48浏览次数:54  
标签:20 23 crontab 任务 command linux 执行 方法

一、crontab基本用法

1.1 cron服务

cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业。

service crond start    //启动服务
service crond stop     //关闭服务
service crond restart  //重启服务
service crond reload   //重新载入配置
service crond status   //查看服务状态

1.2 Crontab存放路径

/var/spool/cron/crontabs   #这个目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名。

1.3 基本语法

crontab (选项) (参数)

1.3.1 选项

-e:编辑该用户的计时器设置;
-l:列出该用户的计时器设置;
-r:删除该用户的计时器设置;
-u<用户名称>:指定要设定计时器的用户名称。

1.3.2 参数

crontab文件(指定包含待执行任务的crontab文件。可以不指定,默认是/var/spool/cron/crontabs/下名字为当前用户名的文件)

1.4 crontab文件的含义

# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * command  

其中
minute: 表示分钟,可以是从0到59之间的任何整数。
hour:表示小时,可以是从0到23之间的任何整数。
day:表示日期,可以是从1到31之间的任何整数。
month:表示月份,可以是从1到12之间的任何整数。
week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。
在以上各个字段中,还可以使用以下特殊字符
星号():代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。
逗号(,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9”
中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6”
正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如
/10,如果用在minute字段,表示每十分钟执行一次。

二、示例

2.1每分钟执行一次command

* * * * * command

2.2 每小时的第3和第20分钟执行一次command

3,20 * * * * command

2.3 在凌晨3点到晚上20点的每小时第20分钟执行一次command

20 3-20 * * * command

2.4 每隔两天的凌晨3点到晚上20点每小时的第20分钟执行一次command

20 3-20 */2 * * command

2.5 每周一的凌晨3点到晚上20点每小时的第20分钟执行一次command

20 3-20 * * 1 command

2.6 每隔一个半小时执行一次command

 通过设置两个定时任务可以实现每一个半小时的定时任务。在设定时两个任务的开始时间刚好错开90分钟,每个任务每3小时执行一次即可。
20 0-23/3 * * * command
50 1-23/3 * * * command
  • 注:两个任务中command为同一个脚本或命令

三、故障排查

3.1 定时任务设置后保存不了

guoew@ubuntu:/etc/cron.daily$ crontab  -e
crontab: installing new crontab
"/tmp/crontab.FLUGtP/crontab":23: bad minute errors in crontab file, can't install. Do you want to retry the same edit? (y/n) 

仔细查看上面保存会发现在第23行分钟的格式设置不正确,修改为正确格式即可。

 3.2 定时任务设置不生效

定时任务不生效原因可能存在下面三种情况:

  1. 定时任务格式或command本身语法不正确
  2. command 没有执行权限

 




标签:20,23,crontab,任务,command,linux,执行,方法
From: https://www.cnblogs.com/opensmarty/p/17036142.html

相关文章

  • Nginx常见的错误及解决方法
    1、Nginx 常见启动错误 有的时候初次安装nginx的时候会报这样的错误 sbin/nginx -c conf/nginx.conf 报错内容:sbin/nginx: error while loading shared libr......
  • win电脑查看wifi密码的方法
     1、使用电脑连接需要查看的WiFi,鼠标右击电脑桌面右下角【WiFi图标】,在弹出的菜单中点击【打开“网络和internet”设置】。2、在弹出的设置窗口中点击【网络和共享中心......
  • vs code .net core Linux下离线安装Nuget包
    本人第一次使用vscode在linux下开发.netcore项目,由于处于内网,无法通过在线安装,所以在遇见离线安装Nuget包时,耗费了一番功夫,网上也没有相关的,最后还是多个思路结合才......
  • Mysql忘记密码的处理方法
    0x01环境说明centos7.9 mysqlv14.14 0x02处理方法1.停止mysqld服务systemctlstopmysqld.service2.编辑配置文件,加入skip-grant-tablesvi/etc/my.cnf#......
  • C#设置程序集PrivatePath的几种方法
    为了使用程序目录更加整洁和美观,我们会建立不同文件夹,分门另类地管理软件目录下的程序集和配置文件,要想使主程序能够读取它们,必须要设置PrivatePath路径,常用的方法包括:方......
  • Java方法
    方法System.out.println();//是什么吗?//系统类+对象+方法Java方法是一对语句的集合,他们一起负责执行一个功能方法是解决一类问题的步骤的有序组合方法包含于......
  • 图文并茂windows10安装VMware创建CentOS-7-x86_64运行linux系统
    VMware是什么VMWare(VirtualMachineware)可以使你的计算机上同时运行几个系统、例如windows、DOS、LINUX等同时存在,可以将这些系统像程序似的随时切换,并且不会影响主......
  • 52Linux之chattar-acl-trash-del脚本
    需求:防止重要文件被删除了chmod+x,还可以用与一下1、利用chattr(加权限)[as@192桌面]$mkdirb[as@192桌面]$sudochattr-R+ab[sudo]as的密码:对不起,请重试......
  • qemu使用uboot通过网络加载 linux kernel
    qemu使用uboot通过网络加载linuxkernel。参考文章:https://www.zhaixue.cc/qemu/qemu-u-boot.htmlhttps://zhuanlan.zhihu.com/p/547338158 1#!/bin/sh2......
  • 简要介绍WASAPI播放音频的方法
    正文填一下之前挖的坑,这回就说说怎么用WASAPI播放声音吧。本文完整代码可以在以下链接找到https://gitcode.net/PeaZomboss/learnaudios目录是demo/wasplay。WASAPI介......