JPEG vers PNG
mogrify -format jpg *.png
Bien sûr, on peut utiliser un motif plus précis que “*.png” (par exemple “Screenshot_20220508_08*.*”) pour peu qu'il soit compréhensible par le shell utilisé.
PNG vers JPEG
mogrify -format png *.jpeg
PNG vers JPEG
mogrify -format jpg -quality 80 -resize 40% *.png
Dans ces exemples on utilise la commande ls pour sélectionner les fichiers auxquels on va appliquer la conversion et les règles d'expansion des paramètres de bash1) pour manipuler les noms des fichiers résultants.
On collecte suivant plusieurs motifs :
ls -1 motif-1.png motif2.png motif-3.png | xargs -n 1 bash -c 'convert "$0" "${0%.png}.jpg"'
On collecte suivant un seul motif et on ne garde que les éléments distinctifs des noms de fichiers :
ls -1 Screenshot_20220508_08*.* | xargs -n 1 bash -c 'convert "$0" "${0#*20220508_08}.jpg"' ls -1 *.png.jpg | xargs -n 1 bash -c 'mv "$0" "${0/.png}"'