Windows에서는 파일/디렉터리의 실제 크기와 디스크 크기를 볼 수 있으며, 디스크 크기는 블록 크기에 따라 다릅니다.
Linux(mint)에서 이것을 어떻게 볼 수 있나요?
내 디스크에는 다양한 크기의 사진 수천 개가 있습니다.
실제 크기와 디스크, 특히 디렉터리에서 차지하는 공간을 확인하고 싶습니다. Windows에서는 낭비되는 공간이 기가바이트에 달할 수 있습니다.
답변1
내 생각에 당신이 찾고 있는 것은 입니다 du
. 실행 후에는 du -s <directory>
디렉터리 내용이 차지하는 디스크 공간이 표시됩니다. du
또한 디렉터리에 있는 각 파일의 크기를 개별적으로 계산하고 총 콘텐츠의 크기를 알 수 있습니다.
du -s --apparent-size <directory>
블록 할당으로 인해 "낭비된" 공간의 양을 알고 싶다면 첫 번째 명령의 결과에서 두 번째 명령의 결과를 빼면 됩니다.
참고: --apparent-size
보고서 크기(KB)입니다. -b
파일에 포함된 정확한 바이트 수를 알고 싶다면 이 플래그를 사용할 수 있습니다. 예를 들어 파일을 전달하기 위해 네트워크를 통해(헤더 등 없이) 전송해야 하는 바이트 수를 알고 싶은 경우에 유용합니다.
답변2
디스크 크기:
du -s -B 1 *
du -s -B 1 * | cut -f 1
콘텐츠 크기:
du -s --apparent-size -B 1 *
du -s --apparent-size -B 1 * | cut -f 1
-s
-B 1
1kb 수 대신 하위 디렉터리 인쇄 크기를 바이트 단위로 인쇄하지 마세요.
cut -f 1
출력에서 파일 이름 생략
스크립트의 출력은 다음과 같습니다.
size of contents:xxxxx, size on disk: xxxxx, percentage wasted: xx.xx%, difference: xxxxx
dirName='.';
sizeOfContents=$(du -s --apparent-size -B 1 "$dirName" | cut -f 1);
sizeOnDisk=$(du -s -B 1 "$dirName" | cut -f 1);
echo size of contents:$sizeOfContents, size on disk: $sizeOnDisk, percentage wasted: $(echo "scale=2 ; 100 - 100*$sizeOfContents/$sizeOnDisk" | bc)%, difference: $(($sizeOnDisk-$sizeOfContents));
한 줄 버전:
dirName='.'; sizeOfContents=$(du -s --apparent-size -B 1 "$dirName" | cut -f 1);sizeOnDisk=$(du -s -B 1 "$dirName" | cut -f 1);echo size of contents:$sizeOfContents, size on disk: $sizeOnDisk, percentage wasted: $(echo "scale=2 ; 100 - 100*$sizeOfContents/$sizeOnDisk" | bc)%, difference: $(($sizeOnDisk-$sizeOfContents));