Beeldbestandsindelingen converteren met de opdrachtregel & sips

Anonim

Het converteren van afbeeldingen naar nieuwe bestandsindelingen is heel eenvoudig dankzij een verscheidenheid aan tools die rechtstreeks in OS X (en de meeste Linux-distributies) zijn ingebouwd. Hoewel de eenvoudigste methode Voorvertoning gebruikt voor het converteren van afbeeldingen, is er een opdrachtregeloptie die dezelfde sips-tool gebruikt die we eerder hebben besproken om het formaat van de batch vanaf de opdrachtregel aan te passen.Met sips kunt u afzonderlijke afbeeldingen naar nieuwe afbeeldingsindelingen converteren of zelfs batchgewijze afbeeldingsconversies uitvoeren.

Eenvoudige beeldconversie vanaf de opdrachtregel

Gebruik de volgende opdrachtreekssyntaxis om één afbeelding met slokjes te converteren:

sips -s formaat --out

Bij een bestand met de naam "test.jpg" dat u naar PNG wilt converteren, is de sips-syntaxis bijvoorbeeld:

sips -s formaat png test.jpg --out test.png

Batchbeeldconversie met slokjes

Het converteren van een groep afbeeldingen is wat lastiger, en het gebruik van eenvoudige jokertekens, zoals bij het wijzigen van de grootte met slokjes, werkt niet helemaal hetzelfde. U zult merken dat het gebruik van een algemeen jokerteken zoalshet bestand niet ook hernoemt, dus gebruiken we in plaats daarvan zeer eenvoudige shell-scripting met de volgende opdrachtsyntaxis:

voor i in ; do sips -s formaat $i --out /$i.;klaar

Om dat te gebruiken, zullen we een map met .jpeg-bestanden converteren naar png-bestanden in een nieuwe submap van de huidige map, genaamd "Converted":

for i in .jpeg; do sips -s format png $i --out Converted/$i.png;done

Het uitvoeren van die opdracht kan ertoe leiden dat alle JPEG-afbeeldingen worden geconverteerd naar PNG-indeling in de nieuwe map.

Een potentieel irritant addertje onder het gras is dat de resulterende bestandsnamen ook het oorspronkelijke bestandstype bevatten, wat betekent dat je uiteindelijk bestanden met de titel "test.jpeg.png" krijgt. De bestandsextensie blijft correct, het is alleen een naamgevingsprobleem. Je zou dat kunnen omzeilen door ze eerst een andere naam te geven en daarna de juiste bestandsextensie toe te voegen met een vergelijkbaar bash-script, met behulp van regex, of handmatig te hernoemen met mv.

Bij het uitvoeren van sips met sommige bestandsindelingen kunt u 'lingpng-waarschuwings'-fouten tegenkomen met betrekking tot exif-gegevens. Deze fouten kunnen grotendeels worden genegeerd en de beeldconversie zal nog steeds plaatsvinden.

Bedankt aan Thom voor het idee van batchconversie

Beeldbestandsindelingen converteren met de opdrachtregel & sips