使用crontab定时执行py

问题

直接执行能够正确完成的py文件,放在linux crontab中进行定时执行时,发现出异常了……
通过对日志文件进行分析,发现对数据库的访问出现了问题,导致sql语句没有执行-_-!

分析

根据shell脚本的经验,应该是执行的时候没有正确访问到用户(francis)的环境变量。在bash shell中是直接通过<code>source /home/francis/.bash_profile</code>来完成的,py中呢?

解决方案一

在crontab中添加

30 10 * * * source /home/francis/.bash_profile;source /etc/profile;python27 /bin/francis/fileCheck.py >> /bin/francis/log_fileCheck
解决方案二

将py文件放到shell脚本中,在shell脚本开头增加

source /home/francis/.bash_profile;source /etc/profile;

再将该shell脚本进行定时

参考文章

Linux中crontab的坑爹环境变量问题

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Linux定时任务Crontab命令详解 linux 系统则是由 cron (crond) 这个系统服务来控制的。...
    孙燕超阅读 1,839评论 0 4
  • Linux 系统提供了使用者控制计划任务的命令 :crontab 命令。 一、crond简介 crond是linu...
    happeace阅读 1,802评论 0 53
  • Linux定时任务Crontab命令详解linux 系统则是由 cron (crond) 这个系统服务来控制的。L...
    时待吾阅读 409评论 0 0
  • 如何才能摆脱又穷又忙,过真正有意义的人生?在今天看到这个话题之前,我一直忧虑的只是如何摆脱穷困的生活,过上属于自己...
    糖果_322c阅读 102评论 0 0
  • 您说, 要命的早餐! 幸福的中餐! 快乐的晚餐! 我笑了! 生活的哲学, 不仅存在于诗人的口中, 它更是热爱生活的...
    刘琼_Joan阅读 227评论 0 1