将Gulp控制台输出记录到文件中

时间:2016-05-07 11:58:54

标签: logging console gulp

我使用Gulp作为处理文本和图像的简单构建系统的一部分,并定义了一系列用于复制,处理和删除这些文件的通用任务。 Gulp和使用的插件都在控制台中提供了大量输出,但是如何将这个输出保存在文件中?

理想情况下,控制台的确切内容将以与控制台中显示的格式相同的格式记录到console.log(没有颜色,这在控制台中很常见):

[13:35:21] Images: 208 items
[13:35:23] gulp-imagemin: Minified 208 images (saved 0 B - 0%)
[13:35:23] Finished 'build:images' after 19 s
[13:35:23] Starting 'clean:responsive'...
[13:35:23] Deleting /responsive/**/*
[13:35:23] Finished 'clean:responsive' after 171 ms
[13:35:23] Starting 'default'...
[13:35:23] Finished 'default' after 57 μs

许多专注于日志记录的Gulp插件似乎主要在控制台中执行此操作,这已经实现,并且只有gulp-messenger将其保存到文本(作为json)。是否可以使用gulp-util

来实现

1 个答案:

答案 0 :(得分:3)

正如Sven Schoenung在评论中所说,这最好在Gulp本身之外完成。实质上,当在终端中运行任务时,两个选项按预期工作:

无声地运行"#34;即没有控制台输出:

gulp task-name > output.log 2>&1

运行"通常",即使用控制台输出:

gulp task-name 2>&1 | tee output.log

两者都会将控制台的输出保存到Gulp工作目录根目录中的output.log