내가/home/videos 디렉토리에 있고 그 아래에있는 모든 디렉토리를 반복적으로 반복한다고 가정 해 보겠습니다. 디렉토리 이름에 "images"가 포함되어 있으면 해당 디렉토리와 그 모든 내용을 삭제하려고합니다. 또한 파일에 대해이 작업을 수행 할 수 있습니까? 각 디렉토리에서 모든 파일을 검토하고 이름이 ".mp3"으로 끝나고 파일이 삭제되는지 확인합니다.리눅스 - 반복적으로 디렉토리를 통과합니까?
감사
내가/home/videos 디렉토리에 있고 그 아래에있는 모든 디렉토리를 반복적으로 반복한다고 가정 해 보겠습니다. 디렉토리 이름에 "images"가 포함되어 있으면 해당 디렉토리와 그 모든 내용을 삭제하려고합니다. 또한 파일에 대해이 작업을 수행 할 수 있습니까? 각 디렉토리에서 모든 파일을 검토하고 이름이 ".mp3"으로 끝나고 파일이 삭제되는지 확인합니다.리눅스 - 반복적으로 디렉토리를 통과합니까?
감사
find . -name "*images*" -type d -exec rm -r {} \;
find . -name "*.mp3" -type f -exec rm -rf {} \;
간부 RF RM은 {} \을; : 파일 패턴과 일치하는 모든 파일을 삭제합니다.
-t 유형 f : 파일 만 일치시키고 디렉토리 이름은 포함하지 않습니다.
-type : 디렉토리 이름 만 일치
굉장합니다. 그리고 이것은 그 밑의 모든 디렉토리에 재귀 적으로 적용될 것입니까? – user2523584
@ user2523584 예, 재귀 적으로 수행합니다. – radar
여기에 대한 유용한 자습서가 있습니다. http://www.cyberciti.biz/faq/linux-unix-how-to-find-and-remove-files/
그래서 당신은
find /home/videos -type d -name "*images*" -exec rm -rf {} \;
및
find /home/videos -type f -name "*.mp3" -exec rm -rf {} \;
사용 찾을 명령처럼 뭔가를 할 수 있습니다. – SMA