mildrenben
mildrenben

Reputation: 3757

Multiple file extensions within the same directory using Gulp

So I have a gulpfile.js setup.

In an images folder I have a few images, some are pngs, some jpgs and some gifs.

I want to target all the pngs, jpgs and gifs in the images folder.

I could use **/* to target everything in the folder, but I don't want to, I want it to be specific to the file types.

I could also do this and specify each file type individually:

return gulp.src('./images/*.jpg', './images/*.png', './images/*.gif')

But it's a lot of repeating yourself and it seems that there should be an easier way.

I'm looking for something like this:

return gulp.src('./images/*.{png, gif, jpg}')

But alas, the above doesn't work (or at least it only works for the first file type in the list)

Anyone know how to do this?

Thanks

Upvotes: 109

Views: 47364

Answers (2)

mildrenben
mildrenben

Reputation: 3757

Take the spaces away

return gulp.src('./images/*.{png,gif,jpg}')

Upvotes: 206

eightyfive
eightyfive

Reputation: 4721

This glob pattern also worked for me:

return gulp.src('./images/*.+(jpg|jpeg|gif|png)')

Note: Notice the + sign, it doesn't work without it.

Found on minimatch documentation.

Upvotes: 73

Related Questions