하위 디렉터리가 포함된 디렉터리가 있고 그 중 일부의 이름을 가져와야 하지만 무시하고 싶은 유사한 패턴을 가진 하위 디렉터리가 있습니다.
예를 들어, 하위 디렉터리 목록이 다음과 같은 경우:
Name_One
Not_needed1
Name_Two
Name_Three
Not_needed2
Name_Zero
하위 디렉터리 Name_One, Name_Two 및 Name_Three의 이름을 변수에 저장하고 싶지만 Name_0은 무시하고 싶습니다.
또한 프로젝트마다 이름이 바뀌지만 항상 Name_Number의 패턴을 따르며 Name_Zero는 항상 제외해야 하는 이름입니다.
저는 Mac 운영 체제를 사용하고 있습니다.
답변1
노력하다:
find . -type d -name 'Name_*' ! -name 'Name_Zero'
디렉토리 이름의 경우 Name_[digit]
및 디렉토리 제외 Name_0
.
find . -type d ! -name 'Name_0' -regex './Name_[0-9]*'
하위 디렉터리도 있는 경우 다음 명령을 사용합니다.
find . -type d ! -name 'Name_0' -regex '.*/Name_[0-9]*'
위의 정규식은 패턴과 일치하는 디렉토리 이름과 일치합니다 Name_[zero-or-more-digits]
. 일치를 방지하려면 Name_
대신 사용하십시오 '.*/Name_[0-9][0-9]*'
.