3

何千もの画像のいくつかのフォルダーをバッチ処理して、長辺が 1440 ピクセルを超える画像を 1440 に縮小し、それよりも小さいファイルは無視したいと思います。

私はsipsを見ていましたが、デフォルトでアップサイジングをスキップするかどうか、またはおそらくgetPropertyを使用してそれをフィルタリングする方法があるかどうかわかりませんか? (man ページから CLI オプションを解読するのは得意ではありません)。

最初にfindまたはsipsクエリを使用してから、それを別のsipsにパイプしてサイズを変更できるのではないかと考えていましたが、正確な方法はわかりませんが、findが画像サイズで検索できるとは思いません。

(これを処理するために一口以外の何かにも開かれていますが、最も簡単な方法のように見えました)

4

1 に答える 1

11

スポットライトを使用して、特定のサイズよりも大きな画像に結果をフィルター処理すると、完全に機能します。

mdfind -0 -onlyin . "kMDItemPixelHeight > 1440 || kMDItemPixelWidth > 1440" | xargs -0 sips -Z 1440

これは、現在のディレクトリから幅または高さが 1440 ピクセルを超える画像を再帰的に検索し、それらのサイズを 1440 に縮小します。1440 未満のファイルはそのままになります。

于 2013-02-09T05:39:22.477 に答える