sips是mac下的一个命令行工具,主要功能:
- 转换图片格式
- 修改图片大小
- 修改图片质量
- 设置版权信息
- ···
需要注意的是:使用sips命令,如果不用--out 指定输出目录或者图片名,sips 会直接修改原始图片。
查看sips是否存在
which sips
/usr/bin/sips
用法:
通过sips --h
或者sips --help
查看所有的用法
Usages:
sips [image-functions] imagefile ...
sips [profile-functions] profile ...
Profile query functions:
-g, --getProperty key
-X, --extractTag tag tagFile
--verify
-1, --oneLine
Image query functions:
-g, --getProperty key
-x, --extractProfile profile
-1, --oneLine
Profile modification functions:
-s, --setProperty key value
-d, --deleteProperty key
--deleteTag tag
--copyTag srcTag dstTag
--loadTag tag tagFile
--repair
-o, --out file-or-directory
Image modification functions:
-s, --setProperty key value
-d, --deleteProperty key
-e, --embedProfile profile
-E, --embedProfileIfNone profile
-m, --matchTo profile
-M, --matchToWithIntent profile intent
--deleteColorManagementProperties
-r, --rotate degreesCW
-f, --flip horizontal|vertical //flip:轻击;掷;翻转
-c, --cropToHeightWidth pixelsH pixelsW
--cropOffset offsetY offsetH
-p, --padToHeightWidth pixelsH pixelsW
--padColor hexcolor
-z, --resampleHeightWidth pixelsH pixelsW
--resampleWidth pixelsW
--resampleHeight pixelsH
-Z, --resampleHeightWidthMax pixelsWH
-i, --addIcon
--optimizeColorForSharing
-o, --out file-or-directory
-j, --js file
Other functions:
--debug Enable debugging output
-h, --help Show help
-H, --helpProperties Show help for properties
--man Generate man pages
-v, --version Show the version
--formats Show the read/write formats
图片重命名
图片批量加前缀
for i in *.jpg; do sips -Z "${i}" --out "test_${i%}"; done
图片批量指定宽度700px,并在文件名前面加"test_"。
for i in *.jpg; do sips -Z 700 "${i}" --out "test_${i%}"; done
裁剪
指定宽度为600px,高度自适应,Z大写
sips -Z 600 test.jpg
指定高度为300px,宽度为400px,z小写
sips -z 300 400 test.jpg
批量指定高度为300px,宽度为400px,文件名为“banner+序列号升序”,z小写,${i}
表示文件名不变
for i in *.jpg; do sips -z 300 400 "${i}" --out "banner$n";done
旋转
可以用任意角度旋转图片,度数为正,表示顺时针旋转
sips -r 90 test.jpg
批量将图片顺时针旋转90°,并放在test文件夹下(需要县创建一个test文件夹),${i}
表示文件名不变
for i in *.jpg; do sips -r 90 "${i}" --out ./test/"${i}"; done
水平/垂直方向旋转图片
sips -f horizontal test.jpg
sips -f vertical test.jpg
批量水平/垂直方向旋转图片并放在指定文件目录(01/02)下
for i in *.jpg; do sips -f horizontal "${i}" --out ./01/"${i}"; done
for i in *.jpg; do sips -f vertical "${i}" --out ./02/"${i}"; done
转换图片格式
指定png图片,转换为.jpg
sips -s format jpeg test.png --out test.jpg
-s format jpeg:
指定输出文件格式为 JPEG.
格式选项有 jpeg | tiff | png | gif | jp2 | pict | bmp | qtif | psd | sgi | tga
-s formatOptions 70:
指定输出质量为70,图片质量支持default、low、normal、high、best、 百分比、lzw、packbits:
批量转换当前目录下的所有PNG文件为JPG文件并指定输出质量为70, ${i}
表示文件名不变
for i in *.png; do sips -s format jpeg -s formatOptions 70 "${i}" --out "${i%png}jpg"; done
网友评论