특수 문자가 포함된 파일을 삭제하려면(공백이거나 깨졌거나 등)
가장 깔끔한 방법은 inum 기반으로 지우는 것이다!
일단 ls -li를 쳐보자.(i 옵션)
그러면 다음과 같이 왼쪽에 숫자가 나온다.(이를 inode number라고 한다! inum은 고유하기 때문에 키를 기반으로 파일을 삭제하면 되는 것이다!)
526016 -rwxr-xr-x. 1 root root 68 3월 30 2015 ~1꿹35.sh
526011 -rwxr-xr-x. 1 root root 72 3월 30 2015 test01.sh
526014 -rwxr-xr-x. 1 root root 54 3월 30 2015 test02.sh
526016을 지우는 것이 목표이므로(~1꿹35.sh)
이제 다음과 같은 커맨드를 날리면 된다!(리눅스에서 정말 자주 사용하는 패턴의 커맨드이다!)
find . -inum 526016 -exec rm -rf {} \;
무작성 rm -rf를 날리기가 불안하다면(이 심정 정말 공감한다!)
먼저 확인해보고 지워도 된다!(rm -rf 대신에 ls를 치면 된다!)
다음 커맨드를 날려서 삭제 대상을 먼저 확인할 수 있다!(신중해서 나쁠 것은 없다! 확인하고 지우기를 적극 권장한다!)
find . -inum 526016 -exec ls {} \;
'IT노트(구) > Linux/Unix' 카테고리의 다른 글
(리눅스) cp를 할 때 p 옵션을 즐겨 사용하자! (0) | 2015.11.27 |
---|---|
리눅스에서 파일 내용 검색하는 방법(grep 이용) (0) | 2015.11.24 |
리눅스 커널 소스 보는 곳 (0) | 2015.11.20 |
리눅스 grep 앞뒤 라인 몇 줄 더 출력하는 방법 (0) | 2015.11.11 |
리눅스에서 cannot execute binary file 에러가 날 때 (0) | 2015.11.10 |