====== 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 [[https://www.gnu.org/software/bash/manual/html_node/Shell-Parameter-Expansion.html|règles d'expansion des paramètres]] de //bash//((Ici, //bash// est exécuté en tant que sous-shell du shell auquel la ligne commande est soumise.)) 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}"'