2014-10-28 12 views
9

Próbuję wykonać coś używając gulp-shell. Moja gulfile.js zawiera następującą treść:Gulp-Shell nie wykonuje żadnych poleceń

var gulp = require('gulp'), 
    shell = require('gulp-shell'); 

gulp.task('test', function() { 
    shell(['echo test']); 
}); 

Potem uruchom go nazywając gulp test. To jest wyjście, które otrzymuję:

Using gulpfile ~/gulpfile.js 
Starting 'test'... 
Finished 'test' after 2.62 ms 

Brak danych wyjściowych dla wywołania echa.

Używam Ubuntu 14 VM, z którym się łączyłem, używając Putty.

Ktoś wpadł na pomysł, co jest nie tak?

Odpowiedz

18

To dlatego, że nie jest to dobry sposób na użycie gulp-shell.

Spróbuj tego, jak widać w gulp-shell README.

var gulp = require('gulp'), 
    shell = require('gulp-shell'); 

gulp.task('test', shell.task([ 
    'echo test' 
])); 
+1

No cóż .. to było łatwe, a ja przeszkadza głowę z nim. Wydaje się jednak niespójne z pozostałymi definicjami zadań. Może chcieć wyjaśnić, jaka jest wielka różnica? :-) – NewGulpUserxx

+1

I czy istnieje sposób, aby nie odbarwiać kolorów od wyjścia? – NewGulpUserxx

+0

Tak właśnie działa. Myślę, że ma to coś wspólnego z danymi o strumieniu Gulpa. Nie sądzę, że jest jakiś sposób na pokazanie kolorów, może spróbuję umieścić twoje polecenia w zewnętrznym pliku skryptowym i uruchomić ten plik z gulp-shell, po prostu pomysł. – tiledcode

4

Dla przypomnienia, jeśli chcesz rury haustem-shell, per specified in the doc:

gulp.task('myGulpTask', [], function() { 
    return gulp.src('gulpfile.js', {read: false}) 
    .pipe(shell('echo "This works too"')); 
}); 
+0

To jest teraz uważane za anty wzór, nie rób tego - https://github.com/sun-zheng-an/gulp-shell – davidbenjamin998

Powiązane problemy