榕叶 发表于 2017-4-28 08:53:59

crontab+python不执行问题

  最近两次使用crontab执行python脚本的一些问题
  两次都是直接执行脚本可以运行,但是放到crontab下无法执行
  检查crond日志有输出,排除
  第一次使用了
  os.system('cd ....')
  os.system('command2')
  发现可以切换至目录,但后面的os.system不执行
  修改为:
  os.system('cd.........;command2')
  解决
  第二次使用了
  os.system('tar ./backup/.....')
  改为
  os.system('tar /home/github/backup/.....')
  解决
  总结起来,两次的问题其实是同一个问题,在执行os.system时会新起一个线程,问题1:
  线程1 cd进到了目录 线程2 却没有进去,自然无法执行command2
  问题2:新的线程找不到路径./backup ,新起的线程并不会在当前脚本所在路径下,当然也就无法执行了
  日志是排查问题的好帮手 ,方法是将标准错误输出 和标准输出都添加到日志文件,可以协助定位问题
  2>log 1>&2
页: [1]
查看完整版本: crontab+python不执行问题