crontab执行脚本

参考好文:https://www.cnblogs.com/intval/p/5763929.html

1:如何使用crontab执行定时脚本

  crontab -e 打开个人的crontab配置文件,然后加入一下这行:

  00 00 * * * /home/linrui/XXXXXXXX.sh

2:执行脚本的结果(脚本可能有标准输出 )存到那?

  如果crontab不重定向输出,并且crontab所执行的命令有输出内容的话,是一件非常危险的事情。因为该输出内容会以邮件的形式发送给用户,内容存储在邮件文件/var/spool/mail/$user如果命令执行比较频繁(如每分钟一次),或者命令输出内容较多,会使这个邮件文件不断追加内容,文件越来越大。而邮件文件一般存放在根分区,根分区一般相对较小,所以会造成根分区写满而无法登录服务器。所以在添加crontab命令时,无论命令是否有输出,最好都加上输出重定向到文件或者/dev/null中。如下

*/5 * * * * /root/XXXX.sh &>/dev/null 2>&1

3:对于已经执行的命令或脚本有没有历史纪录?

  有,存在/var/log/cron中

4:查看定时任务,在哪查看?

   /var/spool/cron/ 这个目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名,比如yanglei建的crontab任务对应的文件就是/var/spool/cron/yanglei。
 一般一个用户最多只有一个crontab文件。

5、创建cron脚本

  第一步:写cron脚本文件,命名为crontest.cron。

     15,30,45,59 * * * * echo "xgmtest....." >> xgmtest.txt  表示,每隔15分钟,执行打印一次命令 
  第二步:添加定时任务。执行命令 “crontab crontest.cron”。搞定

  第三步:"crontab -l" 查看定时任务是否成功或者检测/var/spool/cron下是否生成对应cron脚本

6:crontab格式

代表意义 分钟 小时 日期 月份 命令
数字范围 0-59 0-23 1-31 1-12 0-7 呀就命令啊

 

注:(1)*代表任意时刻    (2),代表分割时刻    (3)-代表时间范围       (4)/n每隔n单位时刻

 

posted @ 2018-06-18 21:59  WorldsCollide  阅读(64)  评论(0)    收藏  举报