Ubuntu crontab 使用篇

Ubuntu 定时任务;

第一步:准备测试shell

我建立了四个文件;其实没必要这么多的,因为初次,遇到问题多,加上shell不太了解,所以各种尝试,记录一下成功版本

分别为: hello.sh log.log test.sh tmp.sql 

内容分别如下:

/shell/test.sh >>/shell/log.log 2>&1   -------将错误信息记录到log.log;

mysql -uroot -pruishn -e "source /shell/tmp.sql"  -------登录数据库 执行sql文件;

insert into h5.test (`a`,`b`,`c`)VALUES(NOW(),NOW(),NOW()); -------像数据库增加数据;

第二步 sudo crontab -e 配置定时任务 

第一次会出现选择一种编辑方式;选择一个后编辑配置文件

下面是我的demo

*/1 * * * * /shell/hello.sh>/dev/null 2>&1

后面加 >/dev/null 2>&1 这个为了避免启动报错 

这里表示每一分钟执行一次;这里具体规则可以查文档;

Apr 30 15:10:11 iZ94ytpcjuhZ crontab[21895]: (root) END EDIT (root)

第三步:补充日志文件;

         测试的时候压根就没找到日志文件在哪儿。后来找了资料发现日志记录未开启

         开启步骤:

         vi /etc/rsyslog.d/50-default.conf

#  Default rules for rsyslog.
#
#                       For more information see rsyslog.conf(5) and /etc/rsyslog.conf

#
# First some standard log files.  Log by facility.
#
auth,authpriv.*                 /var/log/auth.log
*.*;auth,authpriv.none          -/var/log/syslog
cron.*                          /var/log/cron.log
#daemon.*                       -/var/log/daemon.log
kern.*                          -/var/log/kern.log
#lpr.*                          -/var/log/lpr.log
mail.*                          -/var/log/mail.log
#user.*                         -/var/log/user.log

#
# Logging for the mail system.  Split it up so that
# it is easy to write scripts to parse these files.
#
#mail.info                      -/var/log/mail.info
#mail.warn                      -/var/log/mail.warn

去掉注释;

重启日志记录服务:sudo service rsyslog restart

重启cron服务: sudo service cron restart

Centos 稍微不同

crontab -e 编辑

规则一样

另外日志文件在etc目录下 这个应该是系统日志了 也可以自己定义

另外service crond restart | reload | start | stop

         

积累知识,分享知识,学习知识。
原文地址:https://www.cnblogs.com/bin-pureLife/p/4469096.html