npm bin脚本在Windows中没有正确创build

我正在创build一个可以在命令行中使用的NPM包。 我使用npm的bin来指定我的JS文件来执行。 这是我的package.json

 "name": "textree", "bin": { "textree": "./src/cli.js" }, 

但是,当我运行npm link ,由npm创build的批处理命令具有这样的内容:

 @"%~dp0\node_modules\textree\src\cli.js" %* 

而当我运行命令时,我得到错误: /node_modules/textree/src/cli.js:没有这样的文件或目录

如果我检查其他命令行工具(如nodemon),它们的批处理脚本具有:

 @IF EXIST "%~dp0\node.exe" ( "%~dp0\node.exe" "%~dp0\node_modules\nodemon\bin\nodemon.js" %* ) ELSE ( @SETLOCAL @SET PATHEXT=%PATHEXT:;.JS;=;% node "%~dp0\node_modules\nodemon\bin\nodemon.js" %* ) 

由于我的工具的批处理脚本不包含类似的代码,所以当我运行它时会失败。

任何想法如何解决它? 如何让npm为我的包生成与nodemon相同的脚本?

我自己想清楚了。 我错过了在我的“./src/cli.js”脚本的顶部添加hashbang行。

 #!/usr/bin/env node