繁体   English   中英

NodeJS:运行dot slash命令行Windows

[英]NodeJS: Run dot slash command line Windows

我正在尝试获取以下代码,这些代码应该在OSX和Windows中执行shell命令。

const exec = require("child_process").exec;
const runCommand = (cmd) => exec(cmd,
    function (error, stdout, stderr) {
        if (stdout.length > 0) {
            console.log(stdout);
        }
    });

对于以下runCommand("./node_modules/.bin/someBinary")它在Windows中不起作用。 但它在OSX中运行良好。 所以我想知道在Windows中运行它需要哪些修改?

您是否考虑过试试npm-exec

加载与npm run-script相同的环境,但执行任意bash命令行。 (甚至在窗户上!感谢害羞)。 这包括修改$ PATH,以便在全局模块之前使用node_modules / .bin中的脚本。

所以你可以使用npm-exec someBinary而不是使用破坏Windows / OSX兼容性的相对路径

如果这个模块不适合你,你也可以试试npm bin本回答所述

好的,所以最后我通过检查我所在的平台来解决它,反过来我只是用特定的OS编写了相同的命令,所以它会运行。

简而言之,我使用process.platform来找出它是哪个操作系统。 不是最优雅的。 但至少它解决了我的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM