정확히 $NUM
파일을 포함하는 즉각적인 하위 디렉토리를 나열 합니다.
find -maxdepth 2 -mindepth 2 -type f -printf '%h\0' | awk -v num="$NUM" 'BEGIN{RS="\0"} {array[$0]++} END{for (line in array) if (array[line]==num) printf "%s\n", line}'
보다 큰 $NUM
파일을 포함하는 즉각적인 하위 디렉토리를 나열 합니다.
find -maxdepth 2 -mindepth 2 -type f -printf '%h\0' | awk -v num="$NUM" 'BEGIN{RS="\0"} {array[$0]++} END{for (line in array) if (array[line]>num) printf "%s\n", line}'
보다 적은$NUM
파일을 포함하는 즉각적인 하위 디렉토리를 나열 합니다.
find -maxdepth 2 -mindepth 2 -type f -printf '%h\0' | awk -v num="$NUM" 'BEGIN{RS="\0"} {array[$0]++} END{for (line in array) if (array[line]<num) printf "%s\n", line}'
항목은 널 문자로 끝나 \0
므로 줄 바꿈 또는 다른 유형의 공백이 포함 된 파일 이름은 올바르게 해석됩니다. %h
인쇄 각 파일의 dirname
. awk
그런 다음 배열을 사용하여 각 디렉토리에서 발생하는 횟수를 세고 조건이 충족되면 인쇄합니다.
위에서 언급 한 명령은 파일이없는 디렉토리를 표시하지 않습니다. 또한 파일로 는 링크, 디렉토리, 소켓, 블록, 명명 된 파이프 등이 아닌 일반 파일을 참조하고 있습니다 .
가능한 한 간단 하게이 작업을 시도했습니다. 재귀 서브 디렉토리 또는 파일을 찾으려면 수정 된 명령이 필요합니다. 그것들을 모두 나열하기에는 너무 많은 가능성이 있습니다.