2017-04-16 9 views
-1

다음 명령은 언급 된 것을 제외하고 현재 디렉터리의 모든 파일과 폴더를 제거합니다.숨겨진 폴더를 삭제하지 못하도록하는 방법

find . -mindepth 1 ! -path '*testResults*' ! -path '*artifacts*' ! -path '*node_modules*' -exec rm -r {} + 2>/dev/null 

내 질문은 .git 숨겨진 폴더가 삭제되지 않도록 제외하는 방법입니다.

+0

난 당신이 -prune' ... https://unix.stackexchange.com/questions/97558/find- 있는지''-path' 사용할 필요가 생각 결합 경로와 정리를 제외하고 파일과 디렉토리가 도움이된다 – Sundeep

답변

1

사용 ! -name '.git' :

find . -mindepth 1 ! -path '*testResults*' ... ! -name '.git' ... 

당신이 ! -path를 사용하지만 당신은 그냥 대신 정보의 올바른 위치를 보는 인터넷에서 어떤 임의의 물건을 선택에 대한 ! -name 쇼를 모른다는 사실 : 남자 페이지! 그러니 그냥 가서 유형 :

man find 
+0

당신이 물건을 추측한다는 사실은 귀엽다. 나는 https://ss64.com/bash/find.html의 일부분을 읽었지 만, 너무 철저하고 물건을 놓쳤다. 도와주는 사람들을위한 호레이? –

+0

내 가정이 맞는 것 같습니다. 그리고 find 명령의 맨 페이지는 너무 철저하지 않습니다. 'find'는 3 가지 옵션을 가지고 있습니다. 다른 한편으로 나는 이것이 내가 6 년 동안 그것을 보지 못했기 때문에 개인적으로 매우 가난한 것이기 때문에 내가 잘못한 대답을 downvoted했다는 나의 가정이 희망이된다. – hek2mgl

+0

네, 정답이긴하지만 당신의 태도가 악취에 빠지기 때문에 답을 내려 줬습니다. 매너를 키우십시오. –

관련 문제