Konvertere bildefilformater med kommandolinjen og sips
Konvertere bilder til nye filformater er veldig enkelt takket være en rekke verktøy som er bygget direkte inn i OS X (og de fleste Linux-distribusjoner). Selv om den enkleste metoden bruker Forhåndsvisning for å konvertere bilder, er det et kommandolinjealternativ som bruker det samme verktøyet vi har diskutert før, for å utføre batch resizing fra kommandolinjen. Ved hjelp av søppel kan du konvertere enkeltbilder til nye bildeformater, eller til og med utføre batchbildekonverteringer.
Enkel bildekonvertering fra kommandolinjen
For å konvertere et enkelt bilde med søppel, bruk følgende kommandosnittssyntax:
sips -s format [image type] [file name] --out [output file]
For eksempel, på en fil med navnet "test.jpg" som du vil konvertert til PNG, vil synkroniseringssyntaxen være:
sips -s format png test.jpg --out test.png
Batch Image Conversion med sips
Konvertering av en gruppe bilder er litt vanskeligere, og ved hjelp av enkle jokertegn, som når du endrer størrelsen på søppelene, virker det ikke helt det samme. Du finner at ved hjelp av et generisk jokertegn som * ikke omdøper filen også, så bruker vi veldig enkelt skalskripting i stedet med følgende kommandosyntax:
for i in [filename]; do sips -s format [image type] $i --out [destination]/$i.[extension];done
Når vi bruker det, konverterer vi en mappe med .jpeg-filer til png-filer i en ny undermappe i gjeldende katalog, kalt "Konvertert":
for i in *.jpeg; do sips -s format png $i --out Converted/$i.png;done
Kjører denne kommandoen kan føre til at alle JPEG-bilder konverteres til PNG-format i den nye katalogen.
En potensielt irriterende fangst er de resulterende filnavnene vil inneholde den opprinnelige filetypen i dem også, noe som betyr at du vil ende opp med filer med tittelen "test.jpeg.png". Filutvidelsen forblir riktig, det er bare et navngisproblem. Du kan komme seg rundt ved å omdøpe dem til å begynne med, og deretter legge til riktig filtillegg etterpå med et lignende bash script, ved hjelp av regex, eller omdøpt manuelt med mv.
Når du kjører søppel med noen filformater, kan du oppleve "lingpng warning" -feil angående exif-data, disse feilene kan ignoreres for det meste, og bildet konvertering vil fortsatt finne sted.
Takk gå til Thom for batch konvertering ideen