11

我目前使用grunt-shellgrunt任务运行 shell 命令。除了用'&&'将它们串在一起之外,有没有更好的方法在一个任务中运行多个命令?

我的 Gruntfile(部分):

grunt.initConfig({
  shell: {
    deploy: {
      options: { stdout: true },
      command: 'mkdir -p static/styles && cp public/styles/main.css static/styles'
    }
  }
});

一系列命令不起作用,但它会很好:

grunt.initConfig({
  shell: {
    deploy: {
      options: { stdout: true },
      command: [
        'mkdir -p static/styles',
        'cp public/styles/main.css static/styles'
      ]
    }
  }
});
4

1 回答 1

15

您可以将它们连接在一起:

grunt.initConfig({
  shell: {
    deploy: {
      options: { stdout: true },
      command: [
        'mkdir -p static/styles',
        'cp public/styles/main.css static/styles'
      ].join('&&')
    }
  }
});

我选择不支持数组的原因是有些人可能想要;作为分隔符而不是&&,这使得执行上述操作更容易。

于 2013-04-20T23:15:08.770 回答