簡體   English   中英

如何使用 cron 從 bash 運行節點腳本

[英]How can I run a node script from bash using cron

我有這個 cron 作業在 Ubuntu 上運行

02 12 * * * quigley-user /mnt/block/alphabits/start.sh >> /mnt/block/alphabits/start.log

cron 作業按預期運行。

我在 start.sh 腳本中有這個片段

while read -r ticker apiName ;
   do
      echo "$ticker $apiName"
      sudo /usr/bin/node /mnt/block/alphabits/index.js $ticker $apiName
   done < /mnt/block/alphabits/fmpList.txt

回顯行顯示了預期的結果,但是 index.js 腳本沒有運行。 我找不到錯誤,但也許我遺漏了什么。 如果我從命令行運行 cron 作業中的命令,它會正確執行

我錯過了什么? 謝謝!

crontab上下文中可能缺少您的node.js相對導入路徑。

以及node.js的其他可能的隱式環境變量配置

假設你的用戶$HOME目錄是/home/user1

建議:

將以下行添加到start.sh的第二行

  #!/bin/bash
  source /home/user1/.bash_profile

這一行會將您的用戶的上下文路徑和環境變量添加到您的腳本中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM