作为命令行程序的npm包的Shell脚本包装器

时间:2015-05-24 17:28:27

标签: node.js npm

假设您有一个npm包,您希望将其用作命令行程序,例如: JS-美化。

当我在全局安装它时,我发现确实存在一个Windows批处理文件,实际上两个略有不同的批处理文件在不同的目录中具有相同的名称(以及一个shell脚本,用于何时它?安装在UNIX上)。

但是当我在github上查看js-beautify源代码时,没有任何批处理文件的迹象。批处理文件来自哪里?我没有在npm文档中看到过这样的提及。

2 个答案:

答案 0 :(得分:3)

配置" bin"您package.jsonjs-beautify does here的财产。具体而言,npm install使用cmd-shim模块将其创建为shown here

答案 1 :(得分:0)

我想 - 在我的情况下 - C:\ Program Files \ nodejs \ npm(可执行文件)最终负责创建操作系统 - 这样的具体差异。基于Windows的计算机不能像这样运行没有扩展名的文件,但是通过将npm.cmd添加到同一个文件夹中,这足以让Windows的行为足够像UNIX框一样工作。

理论上,然后,在没有扩展的情况下在UNIX世界中创建程序,然后将其安装在Windows世界中,让npm完成它的工作。它应该通过添加.cmd或.bat文件弥补差距。