Linux, etc

[Linux] 이미지/파일 개수 세기

jiheek 2022. 3. 28. 15:43

폴더 안의 이미지(파일) 개수 세기.

 

아래 명령어를 사용하면 폴더 내부에 폴더1, 폴더2.. 와 같이 하위 폴더가 있어도, 하위 폴더 내의 파일들까지 count된다.

find /폴더 -type f | wc -l
  • -type f: file 명령어가 file만 return하도록 한다. 이 옵션을 사용하지 않으면, 파일, 폴더, 다른 디바이스 파일들까지 포함할 것이다.
  • wc -l: wc는 뒤에 오는 파일의 byte/단어 수/newline/characters/최대 문장 길이를 세어 주는 옵션이다. 추가 옵션 없이 wc만 사용하면 차례대로 newline, words, byte 수를 출력해준다.

                "-c: bytes, -m: chars, -w: words, -l: lines, -L: max line length" 

  • | (vertical bar): 일반적으로 "파이프"라고 한다. 앞의 명령을 뒤의 명령으로 파이프하는 데 사용된다. 즉, 첫 번째 명령의 출력을 두 번째 명령의 입력으로 보낸다.

 

따라서 "find /폴더 -type f | wc -l" 명령어는 폴더 내의 file을 return하고, file의 line 수를 세라! 라는 뜻이 되겠다.

 


Additional information

  • wc 예시

예를 들어, 아래와 같은 텍스트 파일에 대해서 wc를 사용하면 다음과 같은 결과가 나온다.

텍스트파일 jihee.txt
결과

결과 해석

3: newline 개수 / 4: 단어 개수 / 16: byte 개수(영어 13자 + newline 3)

 

 

  • info find

 


* 응용: 하나의 디렉터리 내의 파일 수가 아닌, 여러 디렉터리 별로 파일 수를 알고 싶을때.

아래 블로그에 잘 정리되어 있다.

https://jkim83.tistory.com/154

 

리눅스에서 하위 디렉토리별 파일 개수 출력

리눅스 터미널에서 하위 디렉토별 파일 개수를 출력하는 방법입니다. 사실 GUI의 파일 탐색기를 보면 바로 확인이 가능합니다. 그러나 GUI를 볼 수 없는 환경에서는 다음과 같이 하면 됩니다. 각

jkim83.tistory.com

 

코드

echo total: `find . -type f | wc -l` ; for x in `ls` ; do echo $x: `find $x -type f | wc -l`; done
출처: https://jkim83.tistory.com/154 [The Programmer:티스토리]