Batch resize images into new folder using ImageMagick

后端 未结 6 2069
余生分开走
余生分开走 2021-01-31 08:37

I have a folder of images over 4MB - let\'s call this folder dsc_big/. I\'d like to use convert -define jpeg:extent=2MB to convert them to

6条回答
  •  长情又很酷
    2021-01-31 08:44

    convert is designed to handle a single input file as far as I can tell, although I have to admit I don't understand the output you're getting. mogrify is better suited for batch processing in the following style:

    mogrify -path ../dsc_small -define jpeg:extent=2MB dsc_big/*
    

    But honestly I consider it dangerous for general usage (it'll overwrite the original images if you forget that -path) so I always use convert coupled with a for loop for this:

    for file in dsc_big/*; do convert $file -define jpeg:extent=2MB dsc_small/`basename $file`; done
    

    The basename call isn't necessary if you're processing files in the current directory.

提交回复
热议问题