CentOS,crontab的学习、使用、问题解决记录,centoscrontab


参考:http://blog.csdn.net/luanwpp/article/details/7490871

参考:

http://mp.weixin.qq.com/s?src=11&timestamp=1509778367&ver=493&signature=bWRs-rFvNNUU7DpqiUYLbyKdjb0miORobGqQyRQXsAIqddmGdlle5CtDsdsVKLkFYHhnKpjqwjNoP8RUeuq1wrKKSc4emj8BketIjXKX2SW6Leri-YvbGgM*yGJAWJcX&new=1

参考:http://www.cnblogs.com/intval/p/5763929.html

 

Cron(Crond服务)是UNIX,SOLARIS,LINUX系统下使用的,可以通过Cron脚本能使计划任务定期在系统后台自动运行的服务。在UNIX,SOLARIS,LINUX下计划任务,术语为cron jobs。

注:如果要在windows系统中执行类似操作,可以设置windows的任务计划,具体参考 https://jingyan.baidu.com/article/466506582d7c48f549e5f8b5.html

 

1、Crontab约束

CentOS release 6.9(Final)版本中,cron信息保存在/etc目录。

/etc/cron.allow文件,/etc/cron.deny文件。

如果这两个文件都不存在,则只有root用户可以使用crontab。

如果用户名记录在allow文件中,则该用户crontab有效。

如果allow文件不存在,且用户名没被记录在deny文件中,则该用户crontab有效。

如果只存在deny文件且为空时,所有可登陆用户都可以使用crontab。

 

2、Crontab格式与用法

用户通过crontab –e创建或修改的crontab文件保存在/var/spool/cron目录中,文件名与用户名一致。

 

3、Crontab环境设置(对于CentOS来说,定义在/etc/crontab中)

 

 

第一行SHELL变量指定了系统要使用哪个shell。

第二行PATH变量指定了系统执行命令的路径。

第三行MAILTO变量指定了crond的任务执行信息将通过电子邮件发送给root用户。如果没空,则表示不发送。

第四行Home变量指定了执行命令或脚本时使用的主目录

 

4、设置crontab没有标准输出和错误输出

输入crontab -e 编辑crontab文件,在命令的最后加上 >/dev/null 2>&1 ,如

解释:/dev/null表示空设备文件,2>&1表示标准错误输出到标准输出的文件,即空设备文件

 

5、crontab 与环境变量(问题:手动可执行脚本,但crontab却无法执行)

参考:

http://xiachaofeng.iteye.com/blog/1405184

http://www.tennfy.com/3088.html

 

相关内容