웹사이트 검색

Linux에서 디렉터리를 반복적으로 검색하고 제거하는 방법


이전 기사 중 하나에서 Linux의 파일 시스템에서 가장 많은 디스크 공간을 소비하는 상위 디렉터리와 파일을 찾는 방법을 설명했습니다. 해당 디렉터리에 더 이상 중요한 파일과 하위 디렉터리(예: 이전 백업, 다운로드 등)가 포함되어 있지 않은 경우 해당 디렉터리를 삭제하여 디스크 공간을 확보할 수 있습니다.

참고 사항: 파일 및 디렉터리의 디스크 사용량을 찾는 데 유용한 10가지 du(디스크 사용량) 명령

이 짧은 튜토리얼에서는 Linux 파일 시스템에서 디렉터리를 반복적으로 찾고 삭제하는 방법을 설명합니다.

위의 목적을 달성하려면 아래 구문을 사용하여 rm 명령과 함께 find 명령을 사용할 수 있습니다. 여기서 끝에 + 기호를 사용하면 여러 디렉터리를 동시에 읽을 수 있습니다.

find /start/search/from/this/dir -name "dirname-to-delete" -type d -exec /bin/rm -rf {} + 

주의: rm 명령은 Linux에서 사용하기에 가장 위험한 명령 중 하나이므로 주의해서 사용해야 합니다. 중요한 시스템을 실수로 삭제할 수 있습니다. 디렉토리로 인해 시스템 오류가 발생합니다.

아래 예에서는 files_2008이라는 디렉터리를 검색하여 반복적으로 삭제합니다.

$find ~/Downloads/software -name "files_2008" -type d -exec /bin/rm -rf {} + 

findxargs를 사용할 수도 있습니다. 다음 구문에서 -print0 작업을 사용하면 표준 출력에 전체 디렉터리 경로와 그 뒤에 null 문자를 인쇄할 수 있습니다.

find /start/search/from/this/dir -name "dirname-to-delete" -type d -print0 | xargs -0 /bin/rm -rf "{}"

위와 동일한 예를 사용하면 다음과 같은 결과를 얻을 수 있습니다.

find ~/Downloads/software -name "files_2008" -type d -print0 | xargs -0 /bin/rm -rf "{}"

마지막으로, 데이터 보안이 염려된다면 Linux에서 '파일 및 디렉터리'를 영구적이고 안전하게 삭제하는 3가지 방법을 배우고 싶을 수도 있습니다.

Linux의 파일 및 디렉터리 관리에 대한 더 유용한 기사를 읽는 것을 잊지 마십시오.

  1. fdupes – Linux에서 중복 파일을 찾아 삭제하는 명령줄 도구
  2. 'FSlint' 도구를 사용하여 Linux에서 중복/원치 않는 파일을 찾아 제거하는 방법
  3. 확장자가 있는 하나 또는 몇 개의 파일을 제외하고 디렉터리에서 모든 파일을 삭제하는 3가지 방법

이 기사에서는 Linux에서 디렉터리를 재귀적으로 찾고 제거하는 방법을 보여주었습니다. 이 주제에 추가하고 싶은 질문이나 추가 아이디어가 있으면 아래 댓글 섹션을 사용하세요.