Search code examples
linuximagemagickjpegexifmogrify

ImageMagick/Mogrify strip without recompression is it possible?


The problem is in mogrify or because i can't cook it well.

ls -la
total 3.8M
drwxr-xr-x 2 root root  4.0K Nov 26 12:04 .
drwxr-xr-x 4 root root  4.0K Nov 26 11:46 ..
-rw-r--r-- 1 root root  726K Nov 25 20:59 1.jpg
-rw-r--r-- 1 root root  686K Nov 25 20:59 2.jpg
-rw-r--r-- 1 root root  642K Nov 25 20:59 3.jpg
-rw-r--r-- 1 root root 1017K Nov 25 20:59 4.jpg
-rw-r--r-- 1 root root  709K Nov 25 20:59 5.jpg

SHA1 is:

sha1sum *
e1a8f9a1f3c4b036f30f26b1e6db8a6816418597  1.jpg
0bdfe43ce447922e31d644ca01ec62b1fbe28b24  2.jpg
fa5cf34fde564f591c751896d549d9ad63fa63e6  3.jpg
82254da164d3974fd595de0109ec403cc277a85d  4.jpg
3fd0fb00adca64bd27f50a79c2056abbb4630259  5.jpg

Lets strip exif.

for file in *.jpg; do mogrify -strip $file ;done

Check SHA1, it should change:

sha1sum *
800957bd811d6a6e5a5748a3c8dd2d2d5c5fe6be  1.jpg
44f8d904ce12ce4c765496c3d7fb574509e04e94  2.jpg
6a349962836f051cd89b5d05aed9697e5294c155  3.jpg
dd50c36f4187fe261bd34d854acd93bdfdef4d32  4.jpg
246ec57d301caa06c602706d52210fe6ac1b4943  5.jpg

But when after i stripped exif i've got 2 times differ SHA1:

for file in *.jpg; do mogrify -strip $file ;done

sha1sum *
501446ded829acdec0b25a32176d5182798a7c35  1.jpg
ccfceeaa2f3de6b6ab8aa339447ca96e2ea1c074  2.jpg
cb8cb9aef818c87a1f3a3c932f80528a8de291a0  3.jpg
c26f1dcd790d650768644623c60a6c08d3cb2b8b  4.jpg
6a9f34b43d8ec9e0ce84ef0cef2fd91214562fde  5.jpg


for file in *.jpg; do mogrify -strip $file ;done

sha1sum *
3c0183edec801fb96f5088349150384c050f7d2b  1.jpg
ad26f04ffab52301c509b46e523937b3b795ebf0  2.jpg
1edc57ec0e09df23ab9a96d043eefd25d23f3170  3.jpg
a5e38ff402d337edeea0abfd30e02540ff7e915a  4.jpg
c35ec8d9ce4e26030e4209fdb3c32bc52110ac4f  5.jpg

Is it possible to strip exif from JPG images without recompression using mogrify?


Solution

  • I do not think it is possible. You may need to try out exiftool or exiv2

    exiftool -all= *.jpg
    

    or

    exiv2 rm *.jpg