I was trying to rotate few hundred images which have 7000px height in 1000+ images how to rotate them from bash.


You can analyse the size of the picture using ImageMagick's identify and then rotate it using ImageMagick's convert commandline tool.

height=$(identify ${pic} | sed 's/.*x\([0-9]\+\)\+.*/\1/g')

if [[ $height -gt 7000 ]]; then
  convert ${pic} -rotate 90 ${pic}_rotated

The second line extract the height from the output of indentify. The if-clause check if that value is greater than 7000 and then rotates the image 90°.

  • 4
    No need for sed, just user -format option to output only image height: identify -format "%h"
    – jimmij
    Feb 13 '15 at 9:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.