Command-Line
查找具有特定像素高度/寬度的圖像並將它們移動到另一個目錄中
我想找到螢幕截圖文件,其特定像素高度為 2220,寬度為 1080,並希望將它們移動到另一個文件夾中。這不是我可以手動做的,因為源是 100+k 圖像左右。
我找到了以下命令,但無法使其正常工作:
find /Users/myuser/Desktop/daten/JPG -name "*.jpg" -exec bash -c "sips -g pixelHeight -g pixelWidth {} | grep -E '2220‘ >/dev/null" \; -exec mv {} /Users/myuser/Desktop/screenshots \;
錯誤資訊:
bash: -c: line 0: unexpected EOF while looking for matching `'' bash: -c: line 1: syntax error: unexpected end of file
謝謝您的幫助。
更新:修復了命令並將文件夾名稱中的空白刪除為:
find /Users/myuser/Desktop/daten/JPG8 -name "*.jpg" -exec bash -c "sips -g pixelHeight -g pixelWidth {} | grep '2220' >/dev/null" \; -exec mv {} /Users/myuser/Desktop/screenshots \;
..但仍然不能正常工作 - 沒有文件被移動。
只是為了結束這個問題:我已經設法移動並最終使用以下命令刪除了所有螢幕截圖:
find ./JPG* -name "*.jpg" -exec bash -c "sudo exiftool -csv -s -ImageSize {} | grep > /dev/null 'x2220'" \; -exec mv {} ./screenshots/ \;