计划任务作用:做一些周期性的任务,主要用于定时备份数据,同步时间,定时删除日志

所有计划任务执行的输出都会以邮件的方式发送给指定用户,除非重定向

(1)at:一次性调度执行

1)安装

yum install at -y
systemctl start atd
systemctl enable atd

2)语法

语法: at <时间戳>
man at /example

3)例

#at now +1min 		//一分钟之后执行添加用户命令
at> useradd user01
ctrl + d 推出
#atq //查看任务
#vim at.log
useradd user02
#at now +1min <at.log //通过输入重定向方式添加计划任务

(2)crond:循环调度执行,用户级别

1)服务状态

yum install crond -y
systemctl start crond
systemctl enable crond
systemctl status crond
ps aux | grep crond
crond进程每分钟处理一次计划任务

2)crontab

计划任务存储位置
ls /var/spool/cron/当前用户
常用命令:
crontab -l //显示当前用户的计划任务
crontab -r //移除当前用户的所有计划任务
crontab -e //编辑当前用户的计划任务
-u username //管理其它用户的计划任务

3)语法格式

.---------------- 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
注意:最好周和天不要同时使用

4)例

00	02	*	*	*	ls		//每天2点整
00 02 1 * * ls //每月1号2点整
00 02 14 2 * ls //每年的2月14日2点整
00 02 * * 7 ls //每周日2点整
00 02 * 6 5 ls //每年的6月的周五2点整
00 02 14 * 7 ls //每月的14日2点整或每周日2点整,这两个时间都执行
00 02 14 2 7 ls //每年的2月14日2点整或者每周日的2点整,这两个时间都执行
#################################################################################
00 02 * * * ls //每天的2点整
* 02 * * * ls //每天的2点每一分钟
* * * * * ls //每分钟
* * 14 2 * ls //2月14日的每分钟
#################################################################################
*/5 * * * * ls //每隔5分钟
00 02 1,5,8 * * ls //每月的1,5,8号的2点整
00 02 1-8 * * ls //每月的1到8号2点整

5)写计划任务规范

	1丶为定时任务加注释
2丶执行shell脚本任务前加/bin/bash
3丶定时任务命令或脚本结尾加>/dev/null 2>&1 , &>/dev/null , 1>/dev/null 2>/dev/null
4丶定时任务命令或程序最好写到脚本里执行
5丶在指定用户下执行相关命令,命令使用which查找路径,在脚本中加上全路径
6丶生产任务程序不要随意打印输出信息,例如打包
7丶定时任务执行的脚本要规范路径 ,例如/server/scripts/ ,
8丶定义任务规范操作过程,防止错误
首先要在命令行操作成功,复制成功的命令到脚本中
9丶测试脚本,测试成功,复制规范路径到脚本中;
#vim /server/scripts/delete-log.sh
#/bin/bash
/usr/bin/find /usr/local/tomcat/logs -type f -mtime +7 | xargs rm -rf
#echo "Delete 7 days' log at 1 points per day >>/var/spool/cron/root
#echo -e "0\t1\t*\t*\t*\tbash /server/scripts/delete-log.sh &>/dev/null" >>/var/spool/cron/root

6)计划任务日志

/var/log/cron

(3)cron:系统级的计划任务

计划任务at cron的更多相关文章

  1. 周期性计划(一个cron守护进程):

    周期性计划(一个cron守护进程): root@ubuntu:/etc# ps -ef | grep cron root 903 1 0 16:25 ? 00:00:00 /usr/sbin/cron ...

  2. 《linux 计划任务》- cron

    一:什么是计划任务 - 你给手机定了一个闹钟,每天的 7:00 会准时响铃叫你起床,这实际上就是一个计划任务 - 所谓定时任务,就是在已经定好的特定时间去执行的事情. - Cron是一个[守护程序]用 ...

  3. linux计划任务之cron

    目录 cron计划任务之用户级 cron计划任务之系统级 cron计划任务之用户级 1.安装crond centos7 执行命令: # yum install -y crontabs /bin/sys ...

  4. spring 计划任务:cron表达式

    Cron表达式是一个字符串,字符串以5或6个空格隔开,分开工6或7个域,每一个域代表一个含义,Cron有如下两种语法 格式: Seconds Minutes Hours DayofMonth Mont ...

  5. 通过Linux系统Cron执行OwnCloud计划任务

    通过Linux系统Cron执行OwnCloud计划任务 02/02/2013 CRON的确是一个非常有用的功能,它有效减少了系统的负载,在将WordPress和StatusNet的任务计划都转换到Cr ...

  6. centos7—计划任务(at、cron)

    centos7—计划任务(at.cron) 2018-08-08 14:33:17 coisini_覔 阅读数 3751更多 分类专栏: Linux基础 crond/at   版权声明:本文为博主原创 ...

  7. 计划任务cron

    cron 计划任务 作用: 计划任务主要是做一些周期性的任务,目前最主要的用途是定期备份数据 Schedule one-time tasks with at. 一次性调度执行 atSchedule r ...

  8. 红帽学习笔记[RHCSA] 第十课[计划任务Cron与At、逻辑卷管理]

    计划任务[At & Cron Jobs] at # at 命令只能计划一次性任务但是比较方便. # 先输入时间 [root@localhost Desktop]# at 10:02 # 输入要 ...

  9. 计划任务命令crontab、at

    一.为计划任务提供支持 开始为系统建立计划任务之前,需要为系统添加相关设置,以确保计划任务能够正确运行.计划任务需要的支持主要包括两个方面:正确运行系统服务.准确的系统时间. 1.正确运行系统服务 为 ...

随机推荐

  1. dubbo在项目中的应用

    关于dubbo的使用,我们举个简单例子: 存在2个系统,A系统和B系统,A系统调用B系统的接口获取数据,用于查询用户列表. 在上一篇博文介绍了dubbo的创建,zookeeper的创建完成后,我们可以 ...

  2. linux内网机器如何查看本地外网ip

    参考自:http://www.gaojinbo.com/linux%E5%86%85%E7%BD%91ip%E7%9A%84%E6%9C%BA%E5%99%A8%E5%A6%82%E4%BD%95%E ...

  3. SpringBoot打war包并部署到tomcat下运行

    一.修改pom.xml. 1.packaging改为war 2.build节点添加<finalName>你的项目名</finalName> 二.修改项目启动类,继承Spring ...

  4. 1-shell学习(bash)

    1.为什么需要学习shell: (1)通用性,基本上所有的linux机器都会支持 (2)文字传输操作更快 (3)以后的系统管理需要使用 2.知识点: (1)变量相关:

  5. C++正则表达式例子

    给了策划配置公式的地方,需要将策划配置的公式文本转化为可执行的脚本代码:比如:self->mHp*2+target->2mMp*GetHit()+ self_mon->4mDan/1 ...

  6. fileinput 小计(显示历史上传图片)

    今天又需要,要求在选中某条记录后显示历史上传图片 上传控件是fileinput.js 想法:界面有上传图片的控件,重新加载控件,并加入历史上传图片地址 实现代码: var filepathArray ...

  7. 小程序_改变switch组件的大小

    微信开发文档中,switch能修改颜色,没有直接修改switch大小的属性.用一般控件height & width来修改宽高是没有用的. 使用如下方法: 在.wxss文件: .wx-switc ...

  8. upupw注入by pass

    http:' and updatexml(null,concat(0x5c,(/*!00000select SCHEMA_name*/from/*!information_schema*/.schem ...

  9. php中的__call()函数重载

    <?php #调用类中没有的方法时, 会自动调用__call方法重载 #第一个参数是调用时的方法名, 第二个参数为参数组成的数组 class Cat{ public function Hello ...

  10. WAMP Apache 2.5 配置虚拟主机

    1.在 Apache 的安装目录下 conf/httpd.conf 文件中搜索 hosts,去掉 Include 前面的 “#” 号后,即可启用虚拟主机. # Virtual hosts #Inclu ...