서브디렉토리안의 이미지 파일을 일괄적으로 리싸이징하는 방법을 여쭙니다.

amorphis의 이미지

ImageMagick의 convert를 이용해 아래와 같이 스크립트를 만들어봤습니다.

for img in `ls *.JPG`
do
echo "$img Resizing....."
convert -resize 1024 $img $img
done

이 방법을 찾아서 해보고 아싸..정말 편하구나...라고 생각이 들 무렵..
서브디렉토리까지 한방에 할 수 없을까..라는 생각이 들어서요.

find ./* -type d -exec 까지는 생각을 해냈는데 그 다음부터 어찌해야 할지 모르겠습니다.

서브디렉토리까지 일괄적으로 한방에 하는 방법을 정중하게 여쭤봅니다.

송효진의 이미지

-type f 로 하고 -exec 에 convert 를 직접 넣으세요.

emerge money

sangwoo의 이미지

-type d 가 아니고 -type f를 이용하셔야 할 것 같습니다. Target이 디렉토리가 아니고 개별 파일이 되어야 하니까요.

find . -type f -iname '*.jpg' -exec convert -resize 1024 {} {} \;

-exec 옵션은 +가 아니고 ;로 끝맺으셔야 합니다.
----
Let's shut up and code.

----
Let's shut up and code.

amorphis의 이미지

두분모두 감사합니다..^^
덕분에 시간과 손이 너무 편해졌습니다..

마지막코드에 {} 요게 두개있는게 무슨뜻인지 몰라 메뉴얼을 보니
이제야 이해가 가네요..
find로 찾은 항목이 {}로 대체되나 보네요..