Linux之定时任务Crond使用
Linux之定时任务Crond使用
一、用法
crond服务是linux系统自带的服务,是不需要手动安装的;
crond服务是一种守护进程;
Linux中的用户使用contab命令来配置corn任务;
- crontab –e : 修改 crontab 文件,如果文件不存在会自动创建;
- crontab –l : 显示 crontab 文件;
- crontab -u 用户名 -l :查看指定用户的定时任务设置;
- crontab -r : 删除 crontab 文件;
- crontab -ir : 删除 crontab 文件前提醒用户。
- //安装crond服务
- [root@VM_0_5_centos ~]# yum install vixie-cron crontabs
- // 查看crond进程信息:
- [root@CloudDeskTop ~]# ps -ef|grep crond|grep -v grep
- //查看crond服务状态
- [root@CloudDeskTop ~]# service crond status
- //停止crond服务
- [root@CloudDeskTop ~]# service crond stop
- //重启crond服务,先停止再开启
- [root@CloudDeskTop ~]# service crond restart
- //开启crond服务
- [root@CloudDeskTop ~]# service crond start
二、为特定用户添加定时任务
1、为root用户添加
写一个脚本:
为该脚本添加所有用户可执行的权限,方便后面的测试:chmod a+x test.sh
停止crond服务:service crond stop
添加定时任务:
[root@CloudDeskTop install]# crontab -e
- * * * * * /bin/sh /install/test.sh
查看定时任务:
[root@CloudDeskTop install]# crontab -l
* * * * * /bin/sh /install/test.sh
查看有哪些用户拥有定时任务:
[root@CloudDeskTop ~]# ls /var/spool/cron
root
开启crond服务:service crond start
查看/install/目录下是否有test.log文件;
实时显示test.log中的内容:tail -f test.log
停止crond服务:service crond stop
2、为hadoop用户添加
写一个脚本:
为该脚本添加所有用户可执行的权限,方便后面的测试:chmod a+x test01.sh
停止crond服务:[root@CloudDeskTop ~]# service crond stop
添加定时任务:
[hadoop@CloudDeskTop install]$ crontab -e
* * * * * /bin/sh /install/test.sh
* * * * * /bin/sh /install/test01.sh
查看定时任务:
[hadoop@CloudDeskTop install]$ crontab -l
* * * * * /bin/sh /install/test.sh
* * * * * /bin/sh /install/test01.sh
查看有哪些用户拥有定时任务:
[root@CloudDeskTop ~]# ls /var/spool/cron
hadoop root
开启crond服务:[root@CloudDeskTop ~]# service crond start
查看/install/目录下是否有test.log文件;
实时显示test.log中的内容:[hadoop@CloudDeskTop install]$ tail -f test.log
停止crond服务:[root@CloudDeskTop ~]# service crond stop
删除当前用户下定时任务:
[hadoop@CloudDeskTop install]$ crontab -r
[hadoop@CloudDeskTop install]$ crontab -l
no crontab for hadoop
3、小结:
- //命令格式:* * * * * /bin/sh cmd
- 1、cmd为要执行的命令或脚本,例如:/bin/sh /server/scripts/chensiqi.sh
- 2、每个列之间必须要有一个空格。多个空格可以么?自己实践 ==> 经我本人测试有多个空格也可以执行!!
- 3、* * * * *的时间记忆口诀:分时日月周
三、为系统添加定时任务[vi /etc/crontab]
1、理论
在crontab文件中写入需要执行的命令和时间,该文件中每行都包括六个域,其中前五个域是指定命令被执行的时间,最后一个域是要被执行的命令。每个域之间使用空格或者制表符分隔。格式如下:
- minute hour day-of-month month-of-year day-of-week commands
合法值为:00-59 00-23 01-31 01-12 0-6 (0 is sunday)
第一行SHELL变量指定了系统要使用哪个shell,这里是bash。
第二行PATH变量指定了系统执行 命令的路径。
第三行MAILTO变量指定了crond的任务执行信息将通过电子邮件发送给root用户,如果MAILTO变量的值为空,则表示不发送任务 执行信息给用户。
注:commands 注意以下几点
- 要是存在文件,要写绝对路径
- 即使是打印也不会显示在显示屏,在后台运行,最好重定向日志
- //定时任务时间格式举例:
- 5 * * * * /sbin/ls 指定每小时的第5分钟执行一次ls命令
- 30 5 * * * ls 指定每天的 5:30 执行ls命令
- 30 7 8 * * ls 指定每月8号的7:30分执行ls命令
- 30 5 8 6 * ls 指定每年的6月8日5:30执行ls命令
- 30 6 * * 0 ls 指定每星期日的6:30执行ls命令[注:0表示星期天,1表示星期1,以此类推,也可以用英文来表示,sun表示星期天,mon表示星期一等。]
- 30 3 10,20 * * ls 每月10号及20号的3:30执行ls命令[注:“,”用来连接多个不连续的时段]
- 25 8-11 * * * ls 每天8-11点的第25分钟执行ls命令[注:“-”用来连接连续的时段]
- */15 * * * * ls 每15分钟执行一次ls命令 [即每个小时的第0 15 30 45 整点执行ls命令 ]
- 30 6 */10 * * ls 每个月中,每隔10天6:30执行一次ls命令[即每月的1、11、21、31日的6:30执行一次ls 命令。 ]
除了数字还有几个特殊的符号:"*"、"/"和"-"、","
- *代表所有的取值范围内的数字
- "/"代表每的意思,"/5"表示每5个单位
- "-"代表从某个数字到某个数字
- ","分开几个离散的数字
F{0XCAB)LKNIT0K@G.gif)
2、 测试:
1)、编写定时任务:[root@CloudDeskTop install]# vi /etc/crontab
2)、重启crond服务:[root@CloudDeskTop ~]# service crond restart
查看/install/目录下是否有test.log文件;
实时显示test.log中的内容:[hadoop@CloudDeskTop install]$ tail -f test.log
停止crond服务:[root@CloudDeskTop ~]# service crond stop
3、 注意:
run-parts命令只能用于在/etc/crontab中添加定时任务;
Linux之定时任务Crond使用的更多相关文章
- Linux系统定时任务crond那些事
1 Linux系统定时任务 1.1 定时任务介绍 1.1.1 Crond是什么? Crond是linux系统中用来定期执行命令或指定程序任务的一种服务或软件.Centos5/ linux系统安装完操作 ...
- Linux之定时任务Crond介绍
Linux之定时任务 定时任务Crond介绍 Crond是linux系统中用来定期执行命令/脚本或指定程序任务的一种服务或软件,一般情况下,我们安装完Centos5/6 linux操作系统之后,默认便 ...
- Linux之定时任务crond
定时任务说明与分类 定时任务的应用场景举例 每天晚上 12点备份/etc/目录 tar 定时任务的三种分类 crond(crontab)定时任务软件(软件包cronie),用的最多的一种 atd,应用 ...
- linux系统定时任务crond入门
1,Crond: Crond是linux系统中用来定期执行命令或指定程序任务的一种服务或者软件.(Centos5以后默认存在) 当优化开机自启动的时候,第一个就是crond. Crond服务默认情况( ...
- Linux:定时任务crond服务
一.crond简介 crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动cro ...
- linux添加定时任务crond
1.crontab –e:编辑当前定时任务 保存完重新crond : service crond restart 2. crontab用法 crontab –e : 修改 crontab 文件,如果文 ...
- linux定时任务crond export变量问题
linux定时任务crond export变量问题 1)我写了一个重启resin的脚本,由于业务原因,需要定时在某一个时间重启下resin服务器,于是就在 crontab里配置了如下内容: 50 17 ...
- linux定时任务crond那些事!
1.定时任务crond介绍 1.1 crond是什么 crond是linux系统中用来定期执行命令或指定程序任务的一种服务或软件. 特殊需求:(秒级别)crond服务就无法搞定了,一般工作中写脚本守护 ...
- Linux定时任务--Crond使用教程
Linux定时任务--Crond使用教程 1. 介绍Crond crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后 ...
随机推荐
- Cookie的使用(14)
一:cookie的简要介绍: (1)什么是cookie a.cookie是一种客户端的状态管理技术b.当浏览器向服务器发送请求的时候,服务器会将少量的数据以set-cookie消息头的方式发送给浏览器 ...
- Ubuntu安装pyenv实现python多版本控制
Ubuntu安装pyenv实现python多版本控制 git clone git://github.com/yyuu/pyenv.git ~/.pyenv echo 'export PYENV_ROO ...
- h5上传视频文件
从一开始我就掉坑里了,<input type="file" style="display: block;" id="img-upload&quo ...
- springboot 不同环境切换不同的配置文件
开发的流程是本地>测试>预发布>正式,所以不同的环境,肯定是不同的配置文件,所以我们需要针对不同的环境做不同的配置切换. 下面我们来说说 springboot 是怎么来切换的: 1. ...
- 凌华Express CVC D2550 Win7 64-bit无法正常关机的解决办法
[问题现象]: 在Windows点击shutdown按钮后,显示器一直停在“正在关闭...”的界面上: 此时硬盘已经停止工作了: CPU没有发送S5信号,因此,主板上的电没有被切断: [解决办法]: ...
- 利用python完成大学刷课(从0到完成的思路)
i春秋作家:tllm 原文来自:利用python完成大学刷课(从0到完成的思路) 最近刚刚开学,学校总是有很多让人无语的课要修,还不能不修.然后我想写一个自动修课的脚本.大佬们不要笑我 是边面向百度学 ...
- python_正则表达式概述
正则表达式(RegularExpression, re) - 是一个计算机科学的概念- 用于使用单个字符串来描述,匹配符合某个规则的字符串- 常常用来检索,替换某些模式的文本 # 正则的写法- .(点 ...
- insert update delete 语法 以及用法
insert update delete 被称为 数据定义语句语句 也就是数据的增加 修改 删除 其中不包括查询 譬如: create database -创建数据库 alter database - ...
- Python字符串的格式化,看这一篇就够了
相信很多人在格式化字符串的时候都用"%s" % v的语法,PEP 3101 提出一种更先进的格式化方法 str.format() 并成为 Python 3 的标准用来替换旧的 %s ...
- MySQL5.7免安装版配置图文教程
MySQL5.7免安装版配置图文教程 更新时间:2017年09月06日 10:22:11 作者:吾刃之所向 我要评论 Mysql是一个比较流行且很好用的一款数据库软件,如下记录了我学习总结的 ...