found a solution:
identify, part of the imagemagick package, does exactly what I need
$ identify color.jpg > color.jpg JPEG 1980x650 1980x650+0+0 8-bit DirectClass 231KB 0.000u 0:00.000
Rather than parsing the output of
identify by eye, or by text utilities, you can use its
-format option to output the width and height in whatever format suits you best. For example:
$ identify -format '%w %h' img.png 100 200 $ identify -format '%wx%h' img.png 100x200
A list of image properties that you can output can be found on this page, but for the question here, it seems all you need are
%h, which give the image’s width and height, respectively, in pixels.
The flexibility afforded by
-format came in handy for me in finding the largest images in terms of pixels, by outputting
%[fx:w*h] for a number of images and sorting the output.
You might want to specify the
-ping option if you’re processing many images, using more complicated escapes, and want to make sure the program doesn’t waste time loading the entire images. With simple escapes,
-ping should be the default. More information on the choice between
+ping can be found here.
you can just use the command “file” to get the informations you need:
~# file cha_2.png cha_2.png: PNG image data, 656 x 464, 8-bit/color RGB, non-interlaced