我正在尝试使用节点创建命令行工具(在these instructions之后)。
所以我将“bin”添加到package.json文件
"bin": {
"test": "./index.js"
}
创建index.js文件
#!usr/bin/env node
console.log('test');
我使用$ sudo npm link
。
最后我尝试通过终端运行它,但我得到-bash: /usr/local/bin/test: usr/bin/env: bad interpreter: No such file or directory
任何想法?
答案 0 :(得分:0)
npm link
在本地链接模块。对于你的bin,这意味着二进制文件被安装到node_modules/.bin/
中(如果我没记错的话)。
要全局链接包,您应该使用--local
arg。
npm link . --local
答案 1 :(得分:0)
在这种情况下,我不认为需要npm链接;您通常会使用它来连接文件系统中的模块,否则您可以通过npm install命令将其插入。
然而,你的shebang语法让我失望,错过了领先的斜杠:
#!/usr/bin/env node