본문 바로가기

UNIX / LINUX

파일 확장자 한꺼번에 변경하기

저번에 말했던 전자앨범을 만들때였다.

분명 서버에 파일이 올라가 있는데 그림이 안보이는 것이다. 알고보니

확장자가 대문자인 것들을 인식을 못했었다. 그래서 5만장이 넘는 앨범을 어떻게 다 바꿀까 하다가

쉘스크립트를 짜보자 생각을 했다.

 

일단 해당 폴더 내의 모든 JPG 파일을 jpg 로 바꾸는 방법이다.

ls *JPG | sed 's/\(.*\).JPG$/mv "&" "\1.jpg"/' | sh

근데 폴더 내에 여러 폴더들이 더 있었으므로 앞부분을 약간 수정했다.(find 사용)

find ./ -name '*JPG' | sed 's/\(.*\).JPG$/mv "&" "\1.jpg"/' | sh

아 졸리다..;;