Wie drehe ich alle Bilder in einem Verzeichnis und allen Unterverzeichnissen um 90 Grad (mit mogrify)?

Wie drehe ich alle Bilder in einem Verzeichnis und allen Unterverzeichnissen um 90 Grad (mit mogrify)?

Ich versuche, das zu tun, was der Titel meiner Frage andeutet. Hier ist mein bisher bester Versuch:

find . -name '*.jpeg' -exec mogrify -rotate 90 '*.jpeg' {} +

Dadurch werden die Bilder im aktuellen Verzeichnis und in den Unterverzeichnissen scheinbar um 90 Grad im Uhrzeigersinn gedreht (setzen Sie vor die 90 ein Minuszeichen, und es wird gegen den Uhrzeigersinn gedreht), aber ich erhalte diese Fehlermeldung:

mogrify-im6.q16: unable to open image `*.jpeg': No such file or directory @ error/blob.c/OpenBlob/2874.

Ich bin nicht sicher, ob das wichtig ist, aber es ist sicherlich nicht beruhigend. Mir ist bewusst, dass das Auflisten aller .jpegs in einem Verzeichnis und Unterverzeichnissen Folgendes bedeutet:

find . -name '*.jpeg'

und die grundlegende Syntax execlautet:

-exec command {} +

also das oben genannte ist anscheinend nicht ganz richtig. Kann mir jemand sagen, was ich falsch mache? Ich verwende Ubuntu 20.04, falls das wichtig ist.

Antwort1

Habe es gerade herausgefunden. Der Trick besteht darin, dass '.jpeg'die Dateien nach der ersten bereits gefunden wurden, sodass die zweite nicht bereitgestellt werden muss '.jpeg'.

Als Referenz:

jpegSo drehen Sie Bilder rekursiv um 90 Grad im Uhrzeigersinn:

find . -name '*.jpeg' -exec mogrify -rotate 90 {} +

So drehen Sie jpegBilder rekursiv um 90 Grad gegen den Uhrzeigersinn:

find . -name '*.jpeg' -exec mogrify -rotate -90 {} +

verwandte Informationen