作用

  • 每分钟需要执行一个程序去检查系统运行状态
  • 每天凌晨需要对过去的一天业务数据进行统计
  • 每个星期需要把日志文件备份(如果日志信息太多那么占用的磁盘空间就会越大,而且日志我们大多都是实时分析一周之内的日志信息,而超出一周的日志我们会将它进行备份)每天凌晨两三点钟进行备份
  • 每个月需要把数据库进行备份

单一次任务常用命令

  • at 定义计划任务
  • atq 查看计划任务
  • atrm 删除计划任务

周期性计划任务常用命令

#crontab -l 显示我的计划任务

#crontab -r 清除我的所有计划任务列表

周期性计划任务文件格式说明

  •           分     时    日    月    周(五个*号的作用)0-59  0-23 1-31 1-12 0-6
    

minute: 表示分钟,可以是从0到59之间的任何整数。*/1
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”
正斜线(/):可以用正斜线指定时间的间隔频率,例如“
/1”表示每两小时执行一次。同 时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。

配置单一次计划任务

每两分钟广播一次

[root@redhat ~]# at now + 2 minutes
warning: commands will be executed using /bin/sh
at> wall nihao!
at> <EOT>  //按ctrl+d退出
job 1 at Mon Aug 30 22:27:00 2021Broadcast message from root@redhat (somewhere) (Mon Aug 30 22:27:43 2021):     nihao!  //只执行一次

配置周期性计划任务

[root@redhat ~]# crontab -e* * * * * wall 周期任务   //每分钟广播一次


删除的话 crontab -e再次进入删除信息即可

基于单用户添加脚本文件

添加一个脚本文件
脚本文件后缀一般为.sh
if判断用户是否存在

[root@redhat ~]# vim a.shid root
if [$? -eq 0 ];thenecho "root用户存在"
elseecho "root用户不存在"
fi

执行脚本文件

[root@redhat ~]# chmod a+x a.sh
[root@redhat ~]# ./a.sh  //从当前目录执行
uid=0(root) gid=0(root) groups=0(root)
./a.sh: line 2: [0: command not found
root用户不存在

基于系统级别添加任务信息

修改配置文件
[root@redhat ~]# vim /etc/crontabSHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root#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
#|  |  |  |  |
#*  *  *  *  * user-name  command to be executed*  *  *  *  * redhat /var/spool/cron/a.sh

重启服务

[root@redhat ~]# systemctl restart crond

crontab -e 是当前用户自定义的,只针对当前用户生效,/etc/crontab 是针对系统所有用户生效的

扩展计划任务

假设当你的计划任务应该在某个时间点执行,但由于一些因素(断电)没有执行那么这个计划任务还执不执行,什么时候执行?
会在开机以后会开机检查 计划任务哪些执行哪些没有执行,然后在指定时间内去执行

#vim /etc/anacrontab
#period in days delay in minutes job-identifier command
1 5 cron.daily nice run-parts /etc/cron.daily
7 25 cron.weekly nice run-parts /etc/cron.weekly
@monthly 45 cron.monthly nice run-parts /etc/cron.monthly
(每一天开机以后5分钟去检查cron.daily这个脚本)
每个月

Linux之crontab(计划任务)相关推荐

  1. linux centos 7 crontab 启动,CentOS 7 Linux执行crontab 计划任务实操 - 好应网

    [inlosc_lg_title]一.环境准备[/inlosc_lg_title] yum install vixie-cron #安装定时任务插件 yum install crontabs #安装定 ...

  2. Linux执行crontab计划任务,定时执行脚本或命令

    一.cron的作用 按照设置的时间间隔为用户反复执行某一项固定的系统任务 二.cron的操作命令 查看:crontab -l [-u 用户名] 编辑:crontab -e [-u 用户名] 清除: c ...

  3. linux 创建crontab文件位置,[基础教程]linux系统的crontab计划任务添加和删除

    在linux系统中,有时候为了节省人力,所以将一些脚本进行定时执行,通过crontab计划任务进行启动和停止,这样能方便大部分时间来做其他事情,下面主要介绍一下如何启动和删除crontab计划任务 添 ...

  4. 【AWSL】之Linux进程和计划任务管理(ps、top、pgrep、pstree、pkill、at、crontab)

    序言 这里我主要介绍Linux进程与计划任务 进程与计划任务 序言 一 .查看进程 1.程序和进程的关系 2.查看进程信息ps及top.pgrep.pstree ①ps命令 ②.top命令 ③.pgr ...

  5. Python模拟Linux的Crontab, 写个任务计划需求

    Python模拟Linux的Crontab, 写个任务计划需求 来具体点 需求:执行一个程序, 程序一直是运行状态, 这里假设是一个函数当程序运行30s的时候, 需要终止程序, 可以用python, ...

  6. Linux中的计划任务—Crontab调度一次性执行的任务at/batch

    概述 前不久我们梳理了Linux中的计划任务-Crontab调度重复执行的任务,但是有些场景我们只是需要执行一次,执行完就结束任务该怎么办呢? 这里我们要用到linux提供的at/batch命令. 本 ...

  7. Linux系统中计划任务及其相关命令操作(at和crontab)

    Linux系统中计划任务分为两种类型,一种是一次性的计划任务--at,一种是长期性计划任务--crontab,接下来分别讲述它们的作用及其使用场景. 目录 at:一次性计划任务 crontab:长期性 ...

  8. PHP计划任务:如何使用Linux的Crontab执行PHP脚本(转)

    我们的PHP程序有时候需要定时执行,我们可以使用ignore_user_abort函数或是在页面放置js让用户帮我们实现.但这两种方法都不太可靠,不稳定.我们可以借助Linux的Crontab工具来稳 ...

  9. PHP计划任务:如何使用Linux的Crontab执行PHP脚本

    我们的PHP程序有时候需要定时执行,我们可以使用ignore_user_abort函数或是在页面放置js让用户帮我们实现.但这两种方法都不太可靠,不稳定.我们可以借助Linux的Crontab工具来稳 ...

  10. PHP计划任务:如何使用Linux的Crontab执行PHP脚本(转载)

    我们的PHP程序有时候需要定时执行,我们可以使用ignore_user_abort函数或是在页面放置js让用户帮我们实现.但这两种方法都不太可靠,不稳定.我们可以借助Linux的Crontab工具来稳 ...

最新文章

  1. python猜数游戏流程_python简单猜数游戏实例
  2. 6.Hibernate综述
  3. 剑英的区块链学习手记(一)
  4. java中write方法报错_Java中管道报错:Write end dead
  5. 10天时间做出php,php 最近10天的所有日期
  6. Flume 开发者指南V1.5.2
  7. 此计算机缺少或多个网络协议,Win10无法上网提示此计算机缺少一个或多个网络协议的四种解决方法...
  8. php 创建自定义文件夹,Laravel 自定命令以及生成文件的例子
  9. Android电视远程桌面,180元让电视变电脑 远程桌面终端评测
  10. 电磁场与波 matlab,电磁场与波
  11. STM8S单片机入门1(开发环境搭建)
  12. Qt之GIF录制工具
  13. Flutter ListView (动态)列表组件、水平列表组件、图标组件详解
  14. 鹰软件测试初学者,刚入手的 4T紫盘 和 4T酷鹰 测试对比
  15. 2019郑大计算机考研分,2019年郑大分数线未出?郑州大学近三年考研分数线汇总...
  16. PMP项目管理中的重要角色
  17. h5滚动时侧滑出现_HTML5移动端触摸事件以及滑动翻页效果
  18. Nuxt.js开启SSR渲染的教程详解
  19. UI 设计小白入门论
  20. 操作系统先进先出置换算法(FIFO)实现

热门文章

  1. SpringCloud 配置服务器
  2. Android开发时的多点触控是如何实现的?
  3. 时隔二十年,《程序员修炼之道》出第二版了!
  4. 产品管理的工作流程是什么
  5. 《变革中的思索》连载九:放飞的爱;母亲和我
  6. PyTorch:数据读取2 - Dataloader
  7. python 物联网服务器_python+树莓派实现IoT(物联网)数据上传到服务器
  8. rk3399_secureboot在linux环境中操作说明
  9. 08.存储Cinder→5.场景学习→08.Backup Volume→2.实操
  10. Ubuntu中创建、删除、更改、移动文件的命令