当使用 SIPS 获取图像的 pixelWidth 时,它会输出一个标题。例如
sips -g pixelWidth $images
返回
" pixelWidth: 1920"
我试图只获得整数部分,但没有运气:
sips -g pixelWidth $images | grep \d+$
有任何想法吗?
只是一个易于阅读、强大的替代方案,因为您已经有了一个有效的答案,您可以awk
像这样使用:
sips -g pixelWidth image.png | awk '/pixelWidth:/{print $2}'
这就是说...... “在包含单词'pixelWidth:'的行上,请打印第二个字段。”
您想使用 grep 的 -E (正则表达式)和 -o (捕获匹配)标志,这对我有用:
sips -g pixelWidth menu_icon.png | grep -Eo "\d+"
请注意,如果图像的文件路径中有任何数字,它们会显示出来(因为 sips 也会打印文件路径),因此您可能需要pixelWidth
在 grep 输出数字之前添加 grep,如下所示:
sips -g pixelWidth menu_icon.png | grep pixelWidth | grep -Eo "\d+"