Friday, 22 April 2011

rm 명령 수행시 Argument list too long 에러 해결법

모든 tmp_로 시작하는 파일을 삭제하라는 명령을 일반적으로 다음과 같이 수행한다.
rm tmp_*
하지만 문제는 파일이 너무 많게 될 경우 실제로 rm tmp_첫번째 tmp_두번째 tmp_세번째 .... 이런식으로 수행이 되게되는데 여기서 가장 큰 문제는 파일이 너무 많을 경우 rm이 받을 수 있는 인자 개수가 제한이 되어있는데 무수하게 지울 파일 이름을 넣는데 있다.

이럴 경우는 다음과 같은 오류 메시지를 출력하며 rm 명령을 수행하지 못하게 된다.
-bash: /bin/rm: Argument list too long

어떻게 해야할까? 해결법은 하나씩 찾아서 rm에 인자로 넣어주는 것이다.
find . -name "tmp_*" | xargs rm

간단하지 않은가? 아주 단순한 진리가 들어있는 로직이다. ㅋ

No comments:

Post a Comment