Я пытаюсь запустить модуль узла (npm install -g lungo-cli
) из моего crontab
.
Я пытался вызвать двоичный файл узла из crontab:
* * * * * lungo
Не повезло.
Тогда я попробовал с:
* * * * * /usr/local/bin/lungo
Опять не повезло.
Итак, в конце концов я сделал то, что мне показалось, что это обходной путь, вызвав модуль узла напрямую из файла javascript, используя shelljs.
Javascript:
const shell = require('shelljs')
shell.exec('lungo')
Я даже пытался запустить его локально!
const lungo = require('lungo-cli/bin/lungo')
const shell = require('shelljs')
const shell.exec('lungo')
Crontab:
* * * * * /usr/local/bin/node $HOME/scripts/lungo.js
И это то же самое, оно не работает, похоже, что crontab
работает в совершенно другой среде, чем моя оболочка zsh
, и не может найти никаких двоичных файлов, кроме специфичных для OSX, таких как cat
, rm
, cd
и т. Д.
Я использую Mac OSX 10.14.1 (Mojave) и zsh
в качестве оболочки.
Как я мог это сделать? Я хочу иметь возможность вызывать мои программы cli для узлов с помощью crontab.