이는 다음과 매우 유사합니다.이것질문이 있지만 더 나아가야 합니다. 저는 Synology 드라이브를 사용하고 있으며 @eaDir
무시하고 싶은 수많은 디렉터리(및 해당 디렉터리의 파일)가 있습니다 . 어떻게 해야 하나요?
이것은 숨겨진 파일(내가 원하는 것)에 잘 작동하는 재귀 명령입니다. 하지만 디렉토리 이름을 제외하도록 어떻게 변경합니까 @eaDir
?
find .//. ! -name . -print | grep -c //
답변1
지정된 디렉토리로 이동하고 싶지 않으면 before를 @eaDir
사용하면 안 됩니다 .!
-name
mkdir -p a/@eaDir
mkdir -p b/c/@eaDir
mkdir -p d/e/f
touch a/@eaDir/xxx
touch b/yyy
touch b/c/@eaDir/xxx
touch d/e/f/yyy
find . -name '@eaDir' -prune -o -print
당신에게 줄 것입니다 :
.
./b
./b/yyy
./b/c
./a
./d
./d/e
./d/e/f
./d/e/f/yyy
그리고
find .//. -name '@eaDir' -prune -o -print | grep -c //
당신에게 줄 것입니다 :9
이름이 일치하면 -name '@eaDir'
아래 트리의 나머지 부분을 건너뛰고('-prune'), 그렇지 않으면 이름을 인쇄합니다( -o -print
)