Mac 터미널을 사용하여 정규식과 일치하는 디렉터리의 파일을 삭제하세요.

Mac 터미널을 사용하여 정규식과 일치하는 디렉터리의 파일을 삭제하세요.

Mac 터미널을 사용하여 특정 정규식 또는 유사한 솔루션과 일치하는 디렉터리의 파일을 어떻게 삭제할 수 있습니까?

답변1

find명령을 사용하십시오 .

정규식과 일치하는 모든 파일 찾기(재귀적으로): find . -type f -regex '/ex/'
정규식과 일치하는 모든 파일을 (재귀적으로) 찾아 삭제합니다.find . -type f -regex '/ex/' -exec rm {} \;

대괄호는 발견된 경로 이름을 저장하고 백슬래시는 find로 전달될 때 세미콜론을 이스케이프합니다. 이에 대해 혼란스럽다면 "Bash 쉘 학습"의 처음 두 장을 읽어보세요.

더 많은 옵션을 보려면 매뉴얼 페이지를 확인하세요 find. 검색하는 방법은 더 다양합니다.

답변2

Jorelli의 답변과 매우 유사합니다. 이것이 내가 사용하는 것입니다:

find . -regex '/ex/' -print0 | xargs -0 rm

-print0인수 -0로 인해 find는 char 0으로 구분된 목록을 출력하고 xargs는 rm목록의 각 요소에서 명령을 실행하므로 공백이 있는 경로는 문제가 되지 않습니다.

관련 정보