1

因此,有两个完全不同的包,它们有自己的 package.json 文件和命令集。强制机器人和forceios。这些中的每一个都需要一些参数......并且它们的顺序相同。然后将参数带入应用程序并进行操作和/或使用。

它们是全局安装的。

分别运行的命令如下:

forceios 创建 argv1 argv2 argv3 强制机器人创建 argv1 argv2 argv3

理想情况下,我想创建一个命令来统治它们。

forceboth 创建 argv1 argv2 argv3

我希望这个命令执行上述每一项。

4

1 回答 1

0

受您的问题启发,我尝试编写基本的全局 node_module forceboth,它可以只使用一个来运行这两个命令forceboth

您可以克隆存储库并运行npm install -g以全局安装软件包。

或者,保存以下代码并运行node cmd.js create argv1 argv2 argv3

cmd.js

var args = [];

process.argv.forEach(function (val, index, array) {
  args.push(val);
});

var foreiOS = new run_cmd(
  'forceios',args,
  function (me, buffer) { me.stdout += buffer.toString() },
  function () { console.log(foreiOS.stdout) }
);

var foreDriod = new run_cmd(
  'forcedroid',args,
  function (me, buffer) { me.stdout += buffer.toString() },
  function () { console.log(foreDriod.stdout) }
);    

function run_cmd(cmd, args, cb, end) {
   var spawn = require('child_process').spawn;
   var child = spawn(cmd, args);
   var me = this;
   child.stdout.on('data', function (buffer) { cb(me, buffer) });
   child.stdout.on('end', end);
}

代码可能有问题。请更新它,如果您有任何问题。

于 2016-12-20T17:51:30.017 回答