Unix 상자에서 다음 명령을 실행합니다.
find . name CVS -exec rm -fr {} \;
CVS
현재 디렉토리의 모든 디렉토리 내에서 호출된 파일을 삭제하고 싶었고 모든 것이 삭제되었습니다.
다행스럽게도 복구하기 위해 해야 할 일은 CVS에서 다시 체크아웃하는 것뿐이었습니다. 내가 /
시작 디렉터리로 지정했다고 상상해보세요 !
name
대신에 를 사용했기 때문인 것 같습니다 -name
. 난 그냥 다음과 같이 다시 실행
find . -name CVS -exec rm -fr {} \;
그리고 그것은 잘 작동하는 것 같습니다. name
와 반대로 사용되면 정확히 어떻게 되나요 -name
?
답변1
이전에 대시가 누락되었으므로 -name
다음을 찾고 있었습니다.경로.
, name
및 이라는 이름 CVS
이 붙은 점은 현재 폴더를 참조하므로 모두 삭제됩니다.
find 유틸리티는 나열된 각 경로에 대해 디렉토리 트리를 반복적으로 내려갑니다.
echo
실행하려는 명령 앞에 다음을 사용하여 쉽게 테스트할 수 있습니다 .
찾다 . 이름 CVS -exec echo rm -fr {} \;