Запуск нескольких терминальных команд из Node.js - PullRequest
0 голосов
/ 19 сентября 2019

Здравствуйте, у меня вызывается функция в imageBuilder.js, и мне нужно выполнить эти команды в последовательности:

$ pushd /Users/martinbarker/Documents/bume/bumetest
$ npm install
$ popd

Я могу связать эти 3 команды вместе с & в одну большую команду, например, так (мойпуть сохраняется в переменной):

$ pushd ${sourcePath} && npm install && popd

Я пытаюсь сделать это с помощью команды «spawn», чтобы я мог порождать новый процесс, запускать команды, затем убивать процесс, но яне могу понять, как запустить мою большую команду:

function npminstall(sourcePath){
    console.log("inside npminstall()");
      /*
        Spawn a new process and run:
        $ pushd ${sourcePath} && npm install && popd
        Use spawn or exec or fork?
      */
      //spawn new process
      const { spawn } = psPromise;
      //run commands in process
      const promise = spawn('ls', ['../../']);
      const { childProcess } = promise;
      console.log('childProcess.pid: ', childProcess.pid);
      return promise;
}
...