스크립트 작성은 ksh입니다. 하위 디렉토리가 아닌 파일 만 포함하는 현재 디렉토리에서 모든 디렉토리 이름을 직접 찾아야합니다.
ls -alR
첫 번째 필드의 첫 번째 문자 ( d
디렉토리)의 출력을 사용 하고 재귀 적으로 구문 분석 할 수 있음을 알고 있습니다. awk
파싱하고 찾는 가장 좋은 방법 이라고 생각 합니다.
예를 들어, ls -al
현재 디렉토리 의 간단한 출력 :
drwxr-xr-x 22 af staff 748 18 Mar 22:21 .
drwxr-xr-x 5 root admin 170 17 Mar 18:03 ..
-rw------- 1 af staff 3 17 Mar 16:37 .CFUserTextEncoding
drwxr-xr-x 5 af staff 170 17 Mar 17:12 Public
drwxr-xr-x 9 af staff 306 18 Mar 17:40 Sites
-rw------- 1 af staff 3 17 Mar 16:37 textd
…
이이 출력이 디렉토리는 다음과 같습니다 Public
및 Sites
. 디렉토리 Public
에는 하위 디렉토리 가 포함되어 있지 않지만 포함되어 있습니다 Sites
. 에 3 개의 하위 디렉토리가 Sites
있습니다. 따라서 디렉토리가 포함되지 않은 디렉토리 만 에코해야합니다. 제 경우에는 이건 오직 Sites
입니다.