2019-02-22 Linux定时任务 & Shell脚本练习

2019-02-22 Linux定时任务 & Shell脚本练习

Linux定时任务

1.crontab命令
检查是否安装crontab
rpm -qa | grep crontab

/*	
	结果:
	crontabs-1.11-6.20121102git.el7.noarch
*/
crontab服务启动和关闭
/etc/init.d/crond stop
/etc/init.d/crond start
/etc/init.d/crond restart
/etc/init.d/crond reload  #重新载入配置
配置文件
[root@localhost etc]# ll | grep cron
-rw-------.  1 root root      541 Apr 11  2018 anacrontab
drwxr-xr-x.  2 root root       54 Aug 13  2018 cron.d	   #系统自动定期需要做的任务
drwxr-xr-x.  2 root root       57 Aug 13  2018 cron.daily   #每天执行一次的任务
-rw-------.  1 root root        0 Apr 11  2018 cron.deny	#控制不让哪些用户执行crontab功能
drwxr-xr-x.  2 root root       41 Aug 13  2018 cron.hourly  #每小时执行一次的任务
drwxr-xr-x.  2 root root        6 Jun 10  2014 cron.monthly #每月执行一次的任务
-rw-r--r--.  1 root root      451 Jun 10  2014 crontab	#设置定时任务执行文件
drwxr-xr-x.  2 root root        6 Jun 10  2014 cron.weekly  #每周执行一次的任务
用户自定义配置文件
#每个用户都有自己的cron配置文件,通过crontab -e 就可以编辑,一般情况下我们编辑好用户的cron配置文件保存退出后,系统会自动就存放于/var/spool/cron/目录中,文件以用户名命名.linux的cron服务是每隔一分钟去读取一次/var/spool/cron,/etc/crontab,/etc/cron.d下面所有的内容.

crontab 文件格式
 
 *           *        *        *        *         command

minute   	hour     day   	  month    week       command

分          时         天      月        星期       命令

minute 0-59
hour 0-23
day 1-31
month 1-12
week 0-7 #0或7代表星期日
command 要执行的命令 也可以是shell脚本


星号(*):代表每的意思,例如month字段如果是星号,则表示每月都执行该命令操作。

逗号(,):表示分隔时段的意思,例如,“1,3,5,7,9”。
 
中杠(-):表示一个时间范围,例如“2-6”表示“2,3,4,5,6”。

正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。
示例1
test.sh

#/bin/bash

for((i=1;i<=9;i++))
   do
      for((j=1;j<=i;j++))
        do
           echo -e "$i * $j = $(($i*$j))\t\c"
        done
        echo -e "\n"
   done

[root@localhost tmp]# crontab -e
* * * * * /home/tmp/test.sh >> /home/tmp/shlog.log 2 >& 1 #每分钟执行一次test.sh 结果定向shlog.log


#注:

如果在设置crontab定时任务时没有指明对应的输出文件, 则会将定时任务日志输出到/var/spool/cron 下对应用户的文件中

设置定时任务的开机启动
chkconfig --list crond // 查看crond是否开机自动启动
chkconfig --level 35 crond on // 设置crond开机自动启动
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值