![du는 디렉토리 크기가 해당 내용의 합보다 훨씬 크다고 보고합니다.](https://linux55.com/image/69564/du%EB%8A%94%20%EB%94%94%EB%A0%89%ED%86%A0%EB%A6%AC%20%ED%81%AC%EA%B8%B0%EA%B0%80%20%ED%95%B4%EB%8B%B9%20%EB%82%B4%EC%9A%A9%EC%9D%98%20%ED%95%A9%EB%B3%B4%EB%8B%A4%20%ED%9B%A8%EC%94%AC%20%ED%81%AC%EB%8B%A4%EA%B3%A0%20%EB%B3%B4%EA%B3%A0%ED%95%A9%EB%8B%88%EB%8B%A4..png)
du -shc *
최상위 디렉토리에서 실행하면 110G
특정 폴더가 생기고, 해당 폴더 내에서 동일한 명령을 실행하면 11G
어떻게 가능합니까?
플랫폼 세부 정보: 운영 체제: CentOS 6.6 x86_64 드라이브 유형: 솔리드 볼륨 유형: RAID 6 어레이 RAID 컨트롤러: LSI MegaRAID SAS 파일 시스템: ext3
답변1
폴더에 숨겨진 파일이 있을 가능성이 높습니다. 요점은 glob *
이 로 시작하지 않는 파일과 폴더만 선택한다는 것입니다 .
. 따라서 그렇게 하더라도 du
명령에 전달되지 않습니다. 반면, 최상위 디렉터리에서는 도트 파일을 포함한 전체 디렉터리의 크기를 얻을 수 있습니다.
숨겨진 파일을 포함하여 특정 폴더의 모든 파일을 일치시키려면 다음을 시도하십시오( 사용 bash
).
du -shc -- {.[!.],..?,}*
또는 숨겨진 파일도 일치 dotglob
하도록 옵션을 설정하십시오.*
shopt -s dotglob
du -shc -- *