如何在cronjob中调用nodejs等脚本程序

在部署rss_translator 的过程中,发现cronjob似乎无法正确的定时更新到netlify。netlify官方是提供了一个用nodejs写的netlify应用的,安装后从terminal手工执行是完全可以部署的,把命令放到cronjob中就是不运行。

检查了很多个方面,首先cronjob的时间写法这个早就驾轻就熟不会出错,路径也都是用的完整路径,运行权限也都是root,甚至把stderr输出都隐藏了,以及把命令放到一个shell文件中,绕道执行shell命令来启动程序,都没有成功。

后来直接cat发现netlify这个程序其实就是个nodejs脚本,想起来平时在cronjob中执行python脚本都是/usr/bin/python **.py这样用python主程序显式调用脚本的。于是尝试把/usr/local/bin/netlify改成/usr/local/bin/node /usr/local/bin/netlify,完全把netlify当作一个脚本而不是程序来看待,放进cronjob之后就成功了。