В настоящее время я использую команду grunt-shell для запуска команд оболочки из задачи grunt. Есть ли лучший способ запускать несколько команд в одной задаче, отличной от наложения их вместе с '& &'?Как запустить MULTIPLE команды оболочки в задаче gruntjs?
Мои 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'
]
}
}
});
Спасибо, иногда очевидный ответ правильный :). Я не так разбираюсь в командной строке, поэтому не знал, допустимо ли использование '&&' здесь. Я бы по-прежнему поддерживал синтаксис массива, поскольку он уже знаком (grunt.registerTask) и, следовательно, идиоматичен. Пользователи могут всегда присоединяться (';') '. –
Использование '&&' приводит к тому, что он выполняет только следующую команду, если предыдущий преуспел. Использование ';' означает, что он будет продолжать выполнять команды независимо. Я обновил документы на примере. Вы не первый спрашиваете об этом :) –
было бы еще лучше, если бы команда могла запускаться параллельно. я не думаю, что метод join() делает это. – the0ther