Pag-convert ng Mga Format ng File ng Imahe gamit ang Command Line & sips

Anonim

Ang pag-convert ng mga larawan sa mga bagong format ng file ay napakadali salamat sa iba't ibang tool na direktang binuo sa OS X (at karamihan sa mga pamamahagi ng Linux). Bagama't ang pinakamadaling paraan ay gumagamit ng Preview para sa pag-convert ng mga imahe, mayroong isang command line na opsyon na gumagamit ng parehong sips tool na napag-usapan namin noon upang maisagawa ang batch resizing mula sa command line.Gamit ang mga sips, maaari mong i-convert ang mga solong larawan sa mga bagong format ng larawan, o kahit na magsagawa ng mga batch na conversion ng larawan.

Simple Image Conversion mula sa Command Line

Upang mag-convert ng isang larawan gamit ang mga sipsip, gamitin ang sumusunod na command string syntax:

sips -s format --out

Halimbawa, sa isang file na may pangalang "test.jpg" na gusto mong i-convert sa PNG, ang sips syntax ay:

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

Batch Image Conversion na may mga sipsip

Ang pag-convert ng isang pangkat ng mga larawan ay medyo nakakalito, at ang paggamit ng mga simpleng wildcard tulad ng kapag ang pagbabago ng laki gamit ang mga sips ay hindi gumagana nang pareho. Malalaman mo na ang paggamit ng generic na wildcard tulad ngay hindi rin pinapalitan ang pangalan ng file, kaya gagamit kami ng napakasimpleng shell scripting sa halip na may sumusunod na command syntax:

for i in ; gawin sips -s format $i --out /$i.;tapos

Kung gagamitin iyon, magko-convert kami ng folder ng mga .jpeg na file sa mga png file sa isang bagong subfolder ng kasalukuyang direktoryo, na tinatawag na “Convert”:

para sa i sa .jpeg; gawin sips -s format png $i --out Converted/$i.png;done

Pagpapatakbo ng command na iyon ay maaaring magresulta sa lahat ng JPEG na larawang na-convert sa PNG na format sa bagong direktoryo.

Ang isang potensyal na nakakainis na catch ay ang mga magreresultang filename na isasama ang orihinal na filetype sa mga ito, ibig sabihin, magkakaroon ka ng mga file na may pamagat na "test.jpeg.png". Ang extension ng file ay nananatiling tama, isa lamang itong isyu sa pagbibigay ng pangalan. Maaari mong lampasan iyon sa pamamagitan ng pagpapalit ng pangalan sa kanila upang magsimula sa pagkatapos ay pagdaragdag ng wastong extension ng file pagkatapos na may katulad na bash script, gamit ang regex, o manu-manong palitan ang pangalan gamit ang mv.

Kapag nagpapatakbo ng mga sipsip na may ilang mga format ng file na maaari kang makatagpo ng mga error sa 'lingpng warning' patungkol sa exif data, ang mga error na iyon ay maaaring balewalain sa karamihan at magaganap pa rin ang conversion ng imahe.

Salamat pumunta kay Thom para sa ideya ng batch na conversion

Pag-convert ng Mga Format ng File ng Imahe gamit ang Command Line & sips