I want to convert a batch of images, nearly 100, from jpg to png format. How can I do this without renaming them, but instead actually converting the format?
Try these commands,
mogrify -format png /path/*.jpg
This will convert all the .jpg files into .png files and saves the converted files in the same directory.
mv /path/*.png ~/Desktop/pic
This will moves all the
.png files(converted) to the
pic directory which resides on the Desktop.
First install imagemagick:
sudo apt-get install imagemagick
Try converting just one image at first:
convert image.jpg image.png
Now convert all:
mogrify -format png *.jpg
You also need to split it into chunks that will fit to avoid hitting the limit of how much you can put on a command line. This should work better:
find -name '*.jpg' -print0 | xargs -0 -r mogrify -format png
-0 are used to handle spaces in filenames and the
-r means don't run mogrify if there's nothing to do.
EDIT 2 Switched png and jpg as per @Glutanimate's comment.
EDIT 3 Changed png to jpg in last suggestion.
I know it's been a long time since this question was put but there is one brilliant piece of software that has not been mentioned that I have used a lot.
http://photobatch.wikidot.com/ also known as Phatch. It literally converts anything from anything to anything else in image terms. It had not been updated for a while but now claims to be released for ubuntu 17.10. Give it a try. I'm confident you'll be very happy with it.