crond命令

crond
crond的概念和crontab是不可分割的。crontab是一个命令,常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。而crond正是它的守护进程。

(1)crontab 需要启动一个服务crond才行,crond服务通过crontab命令实现。
(2)crontab工作

 运行linux后,开机自启动crond任务,系统会每分钟检查是否有要执行的任务工作(循环检测)

 默认系统中可以登陆的用户,都可以使用crontab定义计划任务。不过,可以通过/etc/cron.allow文件限制权限。


  >>crontab支持两种状态:

a.直接编写计划任务;

b.使用目录的方式,放在目录里面的都会定时执行,定时目录可在/etc/crontab中设定。


(3)用法:

/etc/cron.deny 该文件中所列的用户不允许使用Crontab命令

/etc/cron.allow 该文件中所列的用户允许使用Crontab命令

/var/spool/cron/ 是所有用户的crontab文件

/var/spool/cron/crontabs /var/spool/cron/crontabs

Crontab命令的格式为:crontab –l|-r|-e|-i [username],其参数含义如表一:

参数名称www.britepic.org 含义 示例

-l  显示用户的Crontab文件的内容 crontabl –l

-i 删除用户的Crontab文件前给提示 crontabl -ri

-r  从Crontab目录中删除用户的Crontab文件 crontabl -r

-e  编辑用户的Crontab文件 crontabl -e

用户所建立的Crontab文件存于/var/spool/cron中,其文件名与用户名一致。

<pre name="code" class="cpp">[root@www etc]# vim cron.deny //文件中所列的用户不允许使用Crontab
[root@www etc]# vim cron.allow   //该文件中所列的用户允许使用Crontab命令
[root@www etc]# cat cron.deny
admin
[root@www etc]# cat cron.allow
root
[root@www etc]# su - admin
[admin@www ~]$ crontab -e
You (admin) are not allowed to use this program (crontab)
See crontab(1) for more information
 
  
 
  
(4)crontab文件
第一步:写cron脚本文件,命名为crontest.cron。
15,30,45,59 * * * * echo "xgmtest....." >> xgmtest.txt  表示,每隔15分钟,执行打印一次命令 
第二步:添加定时任务。执行命令 “crontab crontest.cron”。搞定 
第三步:"crontab -l" 查看定时任务是否成功或者检测/var/spool/cron下是否生成对应cron脚本
/
[root@www etc]# cat crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# 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
 *      *     *      *     *    /bin/sh /scripts/yy.sh
 分    时   日    月   周    命令和文件路径
(00-59)  (0-23)  (1-31)  (1-12)   (0-6)
所用符号表示意思
星号每的意思
减号连续一段时间,如:00 17-19 * * * cmd  每天下午17点,18点,19点执行一次命令
逗号多个时间段,如:00 10-11,17-19 * * * cmd 每天的上午10,11点整,下午的17,18,19点整执行一次命令
/n  n 代表数字,指每隔 n 时间执行一次,如 : */2 * * * * cmd  每隔 2 分钟执行一次命令

2/dev/null 2>&1解释

 

0是标准输入    使用<<<

1是标准输出    使用>>>

2是标准错误输出  使用2>2>>

>/dev/null 2>&1  即错误输出与标准输出全部重定向到空,可以写成1>/dev/null 2>/dev/null



(5)cron服务
  cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业。
  /sbin/service crond start    //启动服务
  /sbin/service crond stop     //关闭服务
  /sbin/service crond restart  //重启服务
  /sbin/service crond reload   //重新载入配置
  /sbin/service crond status   //查看服务状态 

测试:
[root@www etc]# crontab -e
crontab: installing new crontab
[root@www etc]# /sbin/service crond start
Starting crond:                                            [  OK  ]
[root@www etc]# cd /home
[root@www home]# vim tmp
[root@www home]# crontab -l
*/1 * * * * echo we are young >>/home/tmp  //每隔一分钟向/home/tmp输入we are young
[root@www home]# cat tmp
we are young
we are young
we are young



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值