如何打开新终端并使用Gulp.js运行命令

时间:2018-02-20 22:35:08

标签: javascript node.js gulp

我使用gulp.js运行一些任务

我需要gulp做的是在新终端中运行一些命令 e.g:

cd <directory_name> yarn start

或  运行其他命令,如纱线安装或构建

以上必须在新的终端中完成。

当我运行第一个任务时,它将打开一个新终端并运行子目录中的服务。第二个运行frontEnd项目,因此需要打开另一个新终端并运行命令。

我在stackOverflow上查看了这两个问题,但仍然没有得到我需要的东西。

2 个答案:

答案 0 :(得分:2)

如果您尝试在Gulp中运行Unix shell命令,我建议您检查ShellJsgulp-shell。如果您特别想在GUI中打开新终端,可以尝试运行以下命令(取决于您的操作系统):

gnome-terminal -e command

xterm -e command

konsole -e command

非常多:

terminal -e command

来源:https://askubuntu.com/questions/46627/

...使用来自gulp任务的ShellJs或gulp-shell。

答案 1 :(得分:1)

你试过这个解决方案吗?

var exec = require('child_process').exec;

gulp.task('node exec', function (cb) {
  exec('cd some/where && yarn start', (err, stdout, stderr) => {
    console.log(stdout);
    console.log(stderr);
    cb(err);
  });
});
根据node.js文档,它是Spawns a shell then executes the command within that shell,完全按照您的意愿行事:https://nodejs.org/api/child_process.html#child_process_child_process_exec_command_options_callback