【发布时间】:2018-08-30 15:52:23
【问题描述】:
您好,我有一个 nodejs 应用程序。为了设置该应用程序,我有一个名为“setup”的文件夹,其中包含以下文件:
commands.jsindex.shindex.js
我还有以下 npm 脚本:
setup:sh ./setup/index.sh
这里是index.sh的内容
#!/bin/sh
echo "Optikos app database setup on progress";
node "$PWD/setup/index.js";
mongo --p 27019 "$PWD/setup/commands.js";
但是,当我运行脚本时,出现以下错误:
./setup/index.sh: 4: ./setup/index.sh: mongo: not found
然而 mongo 已经安装并且在我的$PATH
任何想法为什么会发生这种情况?
这是我的$PATH:
/home/mkcodergr/.npm-global/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/home/mkcodergr/Documents/GitHub/optikos-app/node_modules/.bin:~/mongo/bin:~/Downloads/ngrok:~/.npm-global/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
【问题讨论】:
-
是否安装了mongo?它在你的 $PATH 上吗?
-
是的,它在我的 $PATH 中
-
可能不在您的脚本中。尝试在脚本中添加这一行
echo $PATH并再次运行,看看打印的 PATH 是否包含 mongo -
它打印我的整个 PATH,因为它包括 mongo 路径
标签: node.js mongodb bash npm-scripts