Table des matières

Convertir des images JPEG en PNG et réciproquement

Conversion simple

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

Conversion avec modifications

PNG vers JPEG

mogrify -format jpg -quality 80 -resize 40% *.png

En jouant sur les noms de fichiers

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}"'
1)
Ici, bash est exécuté en tant que sous-shell du shell auquel la ligne commande est soumise.