PROJECTS
|___ SITE1
| |____files (to exclude)
| |____img
| |____js
|
|___ SITE2
| |____files (to exclude)
| |____img
| |____js
|
|___ SITE3
|____files (to exclude)
|____img
|____js
안녕하세요, 파일 폴더의 내용을 제외한 SITE x 폴더 로 검색하고 싶습니다 .
나는 이것을 시도하지만 파일 폴더 에 파일에 대한 권한 오류를 표시 합니다 (그래서 제외하지 않는 것 같습니다).
find . ! -path "*/files/*" -type f -name 'foo'
다음과 같이 표시됩니다 (PROJECTS 디렉토리에 있음).
./SITE1/img/foo.png
./SITE1/js/foo.js
find: `./SITE1/files/201501': Permission denied
find: `./SITE1/files/201412': Permission denied
find: `./SITE1/files/201501': Permission denied
... (the two firsts matches are pretty good, but I break the execution after, it print too many indesirble matches)
나는 askubuntu에 대한이 반응에서 영감을 받았다 .
또한 해결책을 찾지 않고이 예제 와 같이 -prune 옵션을 시도합니다 ...
이 검색과 egrep을 사용하고 싶지만 파일 이름을 원합니다.
egrep -Rns --exclude-dir=files 'foo' *
당신의 도움을 주셔서 감사합니다 !
더 많은 정보가 필요합니다. 나는 당신이 무엇을 요구하는지 전혀 모른다. 당신은 직접적인 질문이 없습니다. 요청한 특정 질문이 있도록 다시 작성해보십시오.
—
Eric F
내가 잘못 추측하지 않는 한, 제외는 "hits"가 표시되지 않지만 디렉토리가 보이지 않게하지는 않습니다. find 명령에 대한 설명서 (--help 출력, 매뉴얼 페이지 또는 기타)는 find의 동작 방식을 나타냅니다. 이 문서를 살펴 보셨습니까?
—
killermist
이것은 실제로 Windows 8에서 매우 쉽게 수행 할 수 있습니다 ...
—
Mokubai
find
Linux에 붙어 있거나 Windows를 사용할 수 있습니까?
의
—
G-Man
-prune
지시어를 시도하십시오 find
. 매뉴얼 페이지 자체가 사용법에 대한 주제를 잘 밝히지 않기 때문에 예제를 검색하는 것이 좋습니다 (여기에는 슈퍼 유저에 몇 가지 좋은 예제가 있습니다) -prune
.
@BroSlow 윈도우 8에 당신이 할 모든 검색 상자 형 내부를 클릭입니다
—
Mokubai
-"files" -directory
그것은 않습니다 정확히 , 먼저 새 터미널 창을 열지 않고도 요구 무슨 cd
다음의 구문 파악, 디렉토리로 보내고 ' find
명령을 사용합니다. 은 *nix
은 "긴"방법처럼 많이 보인다. 그러나 나는 복음을 전하기 위해 여기에 있지 않았습니다. 다른 옵션이 있는지 또는 다른 방법이 도움이되는지보고 싶었습니다.