web-dev-qa-db-fra.com

Ubuntu 16.04 Imagemagick convertir jpg webp

Je me demandais ce qui suit.

J'utilise la commande suivante pour rechercher des fichiers .jpg dans des (sous) répertoires et les convertir (mogrifier) ​​en fichiers .webp.

find . -name '*.jpg' -execdir mogrify -format webp {} \;

Dans ce cas, fichier.jpg devient fichier.webp (et le fichier .jpg est conservé).

Ce que je veux c'est:

Exemple: fichier.jpg devient fichier.jpg.webp (et le fichier .jpg est conservé).

  1. Comment puis-je modifier mon code qu'il définira .jpg.webp?
  2. Existe-t-il un code qui vérifie si un fichier est déjà converti pour qu'il passe, SAUF SI le fichier .jpg d'origine est plus récent?

Merci d'avance!

3
HRR

Votre première question peut être adressée assez facilement:

find . -iname '*.jpg' -exec  convert '{}' -format webp '{}'.webp \;

Cette volonté:

  1. Trouvez récursivement tous les fichiers .jpg, comme dans votre exemple.
  2. Convertissez chaque fichier .jpg en webp en utilisant convert plutôt que mogrify
  3. Utilisez la convention de dénomination que vous recherchiez: 'filename.jpg.webp'

Bien testé sur mon système ...

Références:

2
andrew.46