Most modern cameras will store orientation details in the EXIF data of images taken on them. So if you turn the camera portrait to take an image, software can tell that this image should be displayed portrait.
However, not all software checks the EXIF data first, so you can wind up with portrait images being displayed lying on their side in some software - this is an easy trap to fall into if your file manager does honour the EXIF data.
convert command can be used to read in the EXIF data, check the orientation and then rotate the image if required.
convert $IMAGE -auto-orient $IMAGE_OUTPUT
# Auto-rotate foo.jpg in place convert foo.jpg -auto-orient foo.jpg # Auto-Rotate all images within a directory in place for i in `ls *JPG`; do convert "$i" -auto-orient "$i"; done # Auto-Rotate all images but save into a subdir mkdir op for i in `ls *JPG`; do convert "$i" -auto-orient "op/$i"; done