.jpg 파일의 저장 공간이 얼마나 되는지 알려주는 명령(예:)이 있는지 궁금합니다. 마찬가지로 find / -iname "*.jpg"
찾은 각 파일의 크기를 추가하고 전체를 출력합니다.
답변1
find ./path/to/your/drive -type f -name '*.jpg' -exec du -ch {} +
또는 더 빠르게
find /path/to/your/drive -name "*.jpg" -print0 | du -ch --files0-from=-
아니면 간단히 말해서,
du -ch /path/to/your/drive/*.jpg | grep total
awk
아니면 다음의 도움으로
find /path/to/your/drive -iname "*.jpg" -ls | awk '{total += $7} END {print total}'
내 시스템에서는 파일 크기가 일곱 번째 필드에 표시됩니다. 상황이 다른 경우 그에 따라 조정하십시오.
댓글에서 OP의 요청에 따라 디렉터리의 모든 이미지와 전체 크기를 찾으려면 이 명령을 사용할 수 있습니다(@Stéphane Chazelas가 제안함).
find . -type f -exec file --mime-type {} + | sed -n 's|: image/[^[:blank:]]*$||p' | tr '\n' '\0' | du --files0-from=- -hc
또는
du -shc $(find . -name '*' -exec file {} \; | grep -o -P '^.+: \w+ image' | cut -d':' -f1) | grep total
답변2
대안으로 POSIX를 사용하여 다음을 수행할 수 있습니다.
find . -type f -name "*.jpg" -exec du -sk {} \; |
awk 'BEGIN{total=0};{total += $1}; END{printf "%.3f MB\n", total / 1024}'
추가 자료:
- du - 파일 공간 사용량 추정(POSIX)
- 찾기 - 파일 찾기(POSIX)