Esecuzione di un batch con imagemagick
-
06-07-2019 - |
Domanda
Devo salvare un gruppo (diverse migliaia) di immagini con imagemagick.
Sono totalmente nuovo e la sua documentazione sembra totalmente opaca e totalmente labirintica. Dov'è la guida rapida?
Guardandolo, penso di voler usare mogrify
.
quindi ho effettuato il cd nella directory dei file di programma in cui ho installato imagemagick.
Corro mogrify -format png * .png
come vedo in vari esempi.
Dice:
mogrify: unable to open image `fgimg\': No such file or directory @ blob.c/OpenB lob/2489. mogrify: unable to open file `fgimg\' @ png.c/ReadPNGImage/2865.
Come posso istruire l'esecuzione su tutte le immagini nella sottodirectory \ fgimg?
Grazie mille!
Soluzione
Il problema qui è che stai raggiungendo il limite di quanto puoi mettere su una riga di comando. Devi dividerlo in pezzi che si adatteranno. Dovrebbe funzionare meglio:
find -name '*.png' -print0 | xargs -0 -r mogrify -format png
-print0
e -0
sono usati per gestire gli spazi nei nomi dei file e -r
significa che non eseguire il mogrify se c'è niente da fare.