通过App-wsgetmail从outlook O365获取电子邮件使用crontab不工作



我已经使用App::wsgetmail模块为RT配置了O365的现代身份验证,当我通过终端运行wsgetmail --config=config1.json时,一切工作正常,它可以访问电子邮件的收件箱并在RT中创建票证并将电子邮件标记为已读,但当我试图使用crontab定期做同样的工作时没有结果。corntab与我为其他任务设置的其他cornjob一起工作,只有它不与wsgetmail一起工作。crontab看起来像这样:

*/1 * * * * wsgetmail --config=/path_to_config_directory/config1.json

注意:

  • 我正在使用RT4
  • config1。
  • 我使用root用户进行配置
  • 日志中没有错误

关于我所面临的这个问题你有什么想法吗?

我终于解决了这个问题,并在这里发布了答案,供其他可能面临同样问题的人使用。crontab和terminal是两个不同的环境,wsgetmail perl模块命令对terminal是可识别的,但是为了使它对corntab可识别,我们必须在crontab中添加模块(wsgetmail)的完整路径。

*/1 * * * * /usr/local/bin/wsgetmail --config=/path_to_config_directory/config1.json

或者我们可以创建一个shell脚本并在crontab中调用该脚本。在本例中,test.sh看起来像这样:

#!/bin/bash
/usr/local/bin/wsgetmail --config=account01.json 
/usr/local/bin/wsgetmail --config=account02.json

最新更新