【问题标题】:Shell script wrappers for npm packages that are command line programs作为命令行程序的 npm 包的 Shell 脚本包装器
【发布时间】:2015-05-25 02:44:28
【问题描述】:

假设您有一个想要用作命令行程序的 npm 包,例如js-美化。

当我全局安装它时,我看到它确实有一个 Windows 批处理文件,实际上是在不同目录中具有相同名称的两个略有不同的批处理文件(以及在 UNIX 上安装时的 shell 脚本) .

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

【问题讨论】:

    标签: node.js npm


    【解决方案1】:

    当您将package.json 中的“bin”属性配置为js-beautify does here 时,就会发生这种情况。具体来说,npm install 使用cmd-shim 模块将它们创建为shown here

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-03-29
        • 1970-01-01
        • 2011-04-30
        • 1970-01-01
        • 1970-01-01
        • 2010-12-06
        • 1970-01-01
        • 2021-09-08
        相关资源
        最近更新 更多