Я пытаюсь сделать то, о чем говорится в названии моего вопроса, вот моя лучшая попытка на данный момент:
find . -name '*.jpeg' -exec mogrify -rotate 90 '*.jpeg' {} +
Кажется, это поворачивает изображения в текущем каталоге и подкаталогах на 90 градусов по часовой стрелке (поставьте отрицательный знак перед 90, и изображение будет поворачиваться против часовой стрелки), но я получаю эту ошибку:
mogrify-im6.q16: unable to open image `*.jpeg': No such file or directory @ error/blob.c/OpenBlob/2874.
Я не уверен, имеет ли это значение, но это определенно не обнадеживает. Я знаю, что для перечисления всех .jpeg
s в каталоге и подкаталогах это:
find . -name '*.jpeg'
и основной синтаксис exec
такой:
-exec command {} +
так что вышесказанное, по-видимому, не совсем верно, может кто-нибудь сказать мне, что я делаю не так? Я использую Ubuntu 20.04, если это имеет значение.
решение1
Только что разобрался, фокус в том, что после первого файла '.jpeg'
файлы уже найдены, поэтому нет необходимости предоставлять второй '.jpeg'
.
Для справки:
Чтобы рекурсивно повернуть jpeg
изображение на 90 градусов по часовой стрелке:
find . -name '*.jpeg' -exec mogrify -rotate 90 {} +
Чтобы рекурсивно повернуть jpeg
изображения на 90 градусов против часовой стрелки:
find . -name '*.jpeg' -exec mogrify -rotate -90 {} +