Batch resize images and output images to new folder with ImageMagick

richard picture richard · Jan 13, 2013 · Viewed 65.4k times · Source

Current image folder path:

public_html/images/thumbs

Output image folder path:

public_html/images/new-thumbs

I have 10 video thumbs per video in current folder, named of image thumbs:

1-1.jpg
1-2.jpg
1-3.jpg
1-4.jpg
1-5.jpg (Resize)
1-6.jpg
1-7.jpg
1-8.jpg
1-9.jpg
1-10.jpg

2-1.jpg
2-2.jpg
2-3.jpg
2-4.jpg
2-5.jpg (Resize)
2-6.jpg
2-7.jpg
2-8.jpg
2-9.jpg
2-10.jpg

I want to resize all 5th images(*-5.jpg) to the new folder. I've tried below command but no luck:

mogrify 
-path 
  public_html/images/thumbs/*-5.jpg 
-resize 16×12 
-quality 100 
  public_html/images/new-thumbs/*-5.jpg

Answer

Dmytro Vyprichenko picture Dmytro Vyprichenko · Aug 2, 2013

"Mogrify" should be called from the directory with the original thumbnails, while the -path parameter is for pointing target directory.

cd public_html/images/thumbs
magick mogrify -resize 16x12 -quality 100 -path ../new-thumbs *.jpg

http://www.imagemagick.org/Usage/basics/#mogrify

the last arguments are the list of files, so you can filter by name pp*.jpg for example.