2016-11-02 3 views
0

내 Raspberry Pi에는 jpg 파일이 많이 있습니다. 1.jpg을 제외한 모든 jpg 개의 파일을 삭제하고 싶습니다. 쉘 스크립트에서 어떻게 할 수 있습니까?셸에서 "1.jpg"를 제외한 모든 jpg 파일을 삭제하는 방법

+1

예외 이름을 변경하는 스크립트를 사용하여, 다음 이름 패턴과 일치하는 모든 파일을 삭제하고 마지막으로 그 예외 파일을 다시 다시 이름을 변경합니다 원래 이름으로 – arkascha

답변

3

find을 사용할 수 있습니다. 당신이 잘못을받을 경우

find . -name \*.jpg \! -name 1.jpg -exec rm {} \; 

하는 것처럼 매우 조심, 당신은 쉽게 실수로 많은 파일을 삭제할 수 있습니다. 먼저 "드라이 런 (dry run)"을 수행하여 삭제할 파일을 확인하십시오 (예 :

find . -name \*.jpg \! -name 1.jpg -exec echo "rm {}" \; 
1

당신은 부정에 대한 extended glob pattern을 사용할 수는 (배쉬 필요) :

$ shopt -s extglob 
$ ls 
1.jpg 2.jpg name.jpg 
$ ls !(1).jpg 
2.jpg name.jpg 
$ rm !(1).jpg 
$ ls 
1.jpg 
관련 문제