【发布时间】:2015-05-20 03:46:39
【问题描述】:
我有一个脚本,它是 shebang #!/usr/bin/env node。
当 cron 运行我的脚本时,我收到此错误 /usr/bin/env: node: No such file or directory。
当我以我的用户身份运行脚本时,脚本运行良好,只是不像 cron。我猜是因为 node 不在运行 cron 的用户的 PATH 上?
如何让这个 shebang 与 cron 一起工作?
$ which node 给我
/home/myuser/.nvm/v0.11.14/bin/node
【问题讨论】:
-
你为什么不尝试
node的完整路径? -
因为我认为在脚本中对节点使用 shebang 比调用
$ node myscript.js更好。不过我可能是错的.. -
我不是js专家,但是如果你说
#!/usr/bin/env /full/path/to/node会发生什么?例如,您通过which node获得的完整路径。 -
我认为我不想这样做 b/c 每个用户的节点路径可能不同。请参阅我对问题的编辑,了解
which node给了我什么。 -
我会尝试的最后一件事是
#!/usr/bin/env $HOME/.nvm/v0.11.14/bin/node。可能没有成功的机会。
标签: linux node.js ubuntu cron ubuntu-14.04