Scriptable image processing system. sips is used to query or modify raster image files (JPG/GIF/PNG) and ColorSync ICC profiles. Image processing options include flip, rotate, change image format/width/height. Its functionality can also be used through the "Image Events" AppleScript suite.

      sips [image-query-functions] imagefile ...

      sips [profile-query-functions] profile ...

      sips [image-modification-functions] imagefile ...
           [--out result-file-or-dir]

      sips [profile-modification-functions] profile ...
           [--out result-file-or-dir]

      sips [-h, --help] 
sips [-H, --helpProperties] FUNCTIONS Profile query functions: -g key --getProperty key Output the property value for key to stdout. -X tag tagFile --extractTag tag tagFile Write a profile tag element to tagFile. -v --verify Verify any profile problems and log output to stdout. Image query functions: -g key --getProperty key Output the property value for key to stdout. -x profile --extractProfile profile Get the embedded profile from image and write it to profile. Profile modification functions: -s key value --setProperty key value Set a property value for key to value. -d key --deleteProperty key Remove a property value for key. --deleteTag tag Remove the tag element from a profile. --copyTag srcTag dstTag Copy the srcTag element of a profile to dstTag. --loadTag tag tagFile Set the tag element of a profile to the contents of tagFile. --repair Repair any profile problems and log output to stdout. Image modification functions: -s key value --setProperty key value Set a property value for key to value. -d key --deleteProperty key Remove a property value for key. -e profile --embedProfile profile Embed profile in image. -E profile --embedProfileIfNone profile Embed profile in image only if image doen't have a profile. -m profile --matchTo profile Color match image to profile. -M profile intent --matchToWithIntent profile intent Color match image to profile with rendering intent: perceptual | relative | saturation | absolute. --deleteColorManagementProperties Delete color management properties in TIFF, PNG, and EXIF dictionaries. -r degreesCW --rotate degreesCW -f horizontal|vertical --flip horizontal|vertical -c pixelsH pixelsW --cropToHeightWidth pixelsH pixelsW Crop image to fit specified size. -p pixelsH pixelsW --padToHeightWidth pixelsH pixelsW Pad image with pixels to fit specified size. --padColor hexcolor Use this color when padding. White=FFFFFF, Red=FF0000, Default=Black=000000 -z pixelsH pixelsW --resampleHeightWidth pixelsH pixelsW Resample image at specified size. Image apsect ratio may be altered. --resampleWidth pixelsW Resample image to specified width. --resampleHeight pixelsH Resample image to specified height. -Z pixelsWH --resampleHeightWidthMax pixelsWH Resample image so height and width aren't greater than specified size. -i --addIcon Add a Finder icon to image file. OPTIONS The commands --getProperty, --setProperty, and --deleteProperty can use one of the following keys as a parameter: Special property keys: all binary data allxml binary data Image property keys: dpiHeight float dpiWidth float pixelHeight integer (read-only) pixelWidth integer (read-only) typeIdentifier string (read-only) format string jpeg | tiff | png | gif | jp2 | pict | bmp | qtif | psd | sgi | tga formatOptions string default | [low|normal|high|best|] | [lzw|packbits] space string (read-only) samplesPerPixel integer (read-only) bitsPerSample integer (read-only) creation string (read-only) make string model string software string (read-only) description string copyright string artist string profile binary data hasAlpha boolean (read-only) Profile property keys: description utf8 string size integer (read-only) cmm string version string class string (read-only) space string (read-only) pcs string (read-only) creation string platform string quality string normal | draft | best deviceManufacturer string deviceModel integer deviceAttributes0 integer deviceAttributes1 integer renderingIntent string perceptual | relative | saturation | absolute creator string copyright string md5 string (read-only)

The whatis database is a set of database files containing short descriptions of system commands for keywords. apropos searches this database and displays the result on standard output.

Your personal ICC profiles are stored in the folder:
or ~/Library/Colorsync/Profiles

There are also system wide copies under:

Press the Option/Alt key to reveal the library folder in Apple finder.


Convert a jpeg image into a .png image

$ sips -s format png oldpic.jpg --out newpic.png

Convert a folder filled with jpgs to pngs:

$ for file in *.jpg; do sips -s format png $file --out $file.png

Resize an image to 600 pixels wide by 300 pixels tall

$ sips original.jpg -z 300 600 --out new.jpg

Get the size of an image (dots per inch)

$ sips -g dpiHeight -g dpiWidth mini.jpg
dpiHeight: 72.000
dpiWidth: 72.000

“Genius is the ability to see things invisible, to manipulate things intangible, to paint things that have no features” ~ Joseph Joubert

Related macOS commands

Make JPEG droplet - A simple GUI for sips that converts files to jpg (with source code).
screencapture - Capture screen image to file or disk.
textutil - Manipulate text files in various formats (Doc,html,rtf).
imagemagick - An alternative tool for image manipulation (sips is usually faster).

Copyright © 1999-2023
Some rights reserved