디렉터리 이름을 가져오는 스크립트 명령의 대안(ls 및 awk 사용)

디렉터리 이름을 가져오는 스크립트 명령의 대안(ls 및 awk 사용)

cron이 awk를 무시하는 것에 대한 내 질문과 관련하여 awk에 대한 대안이 있습니까? 문제가 있는 줄은 다음과 같습니다.

for dirlist in `ls -l $WEBFOLDER | awk '$1 ~ /d/ {print $10 }' `

awk을 몰라서 이 부분이 이해가 안가는데 , 결과에 10번째 열을 $1 ~ /d/출력해주는 역할을 하는 것 같아요 . ls -l현재 awk에 액세스할 수 없으므로 awk를 사용하지 않고 디렉토리 이름을 얻을 수 있는 다른 방법이 있습니까?

편집: 위 줄은 이름만 출력합니다. 선이나 점이 없고 이름만 있습니다.

답변1

찾기를 사용해 보는 것은 어떨까요? 다음과 같은 디렉토리를 쉽게 얻을 수 있습니다.

find . -type d

필요한 경우 깊이를 제한할 수도 있습니다.

find . -type d -maxdepth 1

답변2

간단한 for 루프:

for dir in "$WEBFOLDER"/*/; do
  basename "$dir"
done

점으로 시작하는 디렉토리도 원하는 경우:

for dir in "$WEBFOLDER"/.*/ "$WEBFOLDER"/*/; do
  basename "$dir"
done

관련 정보