다음과 같은 폴더 트리 구조가 있습니다.
arndell
\_databases
\_daily
\_weekly
claremont
\_databases
\_daily
\_weekly
monte
\_databases
\_daily
\_weekly
그리고 나는 주간 및 일일 디렉토리 내의 모든 파일만을 찾고 있습니다. 쉘 명령이나 명령을 사용하여 이를 달성할 수 있는 방법이 있습니까?
최상위 폴더에서 시도했지만 ls -R */weekly/
작동하지 않았습니다.
답변1
arndell
음, 맨 위( , claremont
및 의 상위 monte
) 디렉토리에서 다음을 입력할 수 있습니다.
ls */*/{weekly,daily}
다음으로 확장됩니다.
ls */*/weekly */*/daily
그러면 모든 weekly
및 daily
디렉토리의 내용이 표시됩니다.
답변2
bash가 있으면 다음을 사용할 수 있습니다.
shopt -s globstar
for f in **/{daily,weekly}/*; do
whatever $f
done
답변3
find . '(' -path '*/weekly/*' -o -path '*/daily/*' ')' -type f