当前位置: 首页 > 面试题库 >

如何通过cron作业执行Node.js脚本?

冉俊德
2023-03-14
问题内容

很简单,我有要每月执行一次的节点脚本。

30 6 1 * * node /home/steve/example/script.js

但这是行不通的,大概是因为该命令正在运行的路径或外壳。我尝试了以下通过cron执行节点的方法(已通过-v测试):

steve@atom:~$ node -v
v0.4.2

steve@atom:~$ sh node -v
sh: Can't open node

steve@atom:~$ bash node -v
/usr/local/bin/node: /usr/local/bin/node: cannot execute binary file

steve@atom:~$ /usr/local/bin/node -v
v0.4.2

steve@atom:~$ sh /usr/local/bin/node -v
/usr/local/bin/node: 1: Syntax error: "(" unexpected

steve@atom:~$ bash /usr/local/bin/node -v
/usr/local/bin/node: /usr/local/bin/node: cannot execute binary file

我没办法尝试了,有什么建议吗?


问题答案:

只需提供/usr/local/bin/nodecron作业中node的完整路径即可,例如:

30 6 1 * * /usr/local/bin/node /home/steve/example/script.js


 类似资料:
  • 问题内容: 如何通过PHP脚本设置cron作业。 问题答案: 这将添加一个每天上午9:30运行的脚本。 如果从Web服务器运行此脚本,可能会遇到权限问题。为了解决这个问题,我建议使用另一种方法。 这是一种可能的解决方案。创建需要运行的脚本列表。您可以将其保存在文本文件或数据库中。创建一个脚本来读取此列表,并每分钟或每5分钟(使用cronjob)运行它。您的脚本将需要足够聪明,以决定何时运行脚本列表

  • 问题内容: 我想每天午夜运行一个PHP脚本。在研究如何执行此操作之后,似乎达到此目的的最佳方法是使用CRON作业。 如果我的php脚本位于http://example.com/scripts/scriptExample.php,是否有人可以显示此CRON命令的外观的最简单示例? 我浏览了许多帖子,但找不到足够简单的示例供我学习和借鉴。 问题答案: Crontab需要服务器上的完整路径。 这将每天在

  • 问题内容: 在我们的centos6服务器中。我想以apache用户的身份在cron作业中执行php脚本,但不幸的是它不起作用。 这是crontab的版本(crontab -uapache -e) 这是“ test.php”文件的源代码,可以与“ apache”用户作为所有者正常工作。 我尝试将php替换为php的完整路径(/ usr / local / php / bin / php),但它也不起

  • 我正在尝试运行一个python3脚本,每天在特定的时间检查电子邮件的特定条件。 我可以看到crontab调用了这些命令,但脚本没有给出我需要的结果,即似乎没有运行。我可以在syslog中看到cron的执行: 8月3日16:25:01 raspberrypi/USR/SBIN/CRON[4597]:(pi)CMD(cd/home/pi/pythonscripts) 8月3日16:25:01 rasp

  • 问题内容: 我希望服务器每分钟执行一次节点脚本。如果我手动执行文件(),该程序将完美执行,因此,我很确定这不是问题。但是,当我将其交给cron执行时,什么也没发生。 这是cron文件中的行。 这是一个示例日志: 可执行文件: 知道我为什么要广播静音吗?我应该在其他地方调试? 更新: 我相信问题与我的相对文件路径有关,并且main.js从其自己的目录外部执行。 所以现在,我已经放置在目录中。看起来像

  • 我已经创建了一个自动化的测试套件使用Selenium网络驱动程序,Maven 但是,当同一个shell脚本使用cron作业运行时,不会执行maven命令。我在shell脚本中看到了一些为maven指定路径的解决方案。这对我也不管用。 #!/宾/巴什 "" cd/home/me/projects/my_test_suite 导出路径=$PATH:/home/me/installs/apache-ma