du 명령어 출력


1

폴더가 16.91GB있고 크기가 있습니다 (Finder에서 확인).

du명령 을 사용하여 크기를 확인하려고했습니다 .

그래서 나는 노력 du -sh ~/folder했고 나는 얻었다 16G.

출력을 바이트로 가져 와서 변환 할 것이라고 생각했습니다. 그러나 나는 제공되지 않을 때 메트릭을 이해하지 못합니다 -h.

du -s ~/folder

제공합니다 33041320. 바이트 단위라고 생각했지만 잘못되었습니다. 어떤 형식으로되어 있습니까?

16.91GB대신에 16G어떻게 얻을 수 있습니까?

참고 : Linux에서도 동작이 동일하다고 생각하므로 태그를 지정했습니다 linux. 잘못된 경우 태그를 알려주거나 제거하십시오.

감사합니다.

답변:


2
  1. 어떤 형식으로되어 33041320있습니까?
    33041320512 바이트 블록의 수입니다. 매뉴얼 페이지에서 :

    If the environment variable BLOCKSIZE is set, and the -k option is not specified, the block counts will be displayed in units of that size block. 
    If BLOCKSIZE is not set, and the -k option is not specified, the block counts will be displayed in 512-byte blocks.   
    
  2. 16 대신 16.91을 어떻게 얻습니까?
    당신이 할 수없는 것 같습니다. finder16.91을보고 하는 이유 는 파인더가 1000 바이트를 1k로 취급하기 때문입니다. 기술적으로 말하자면 파인더가보고 한 수치가 올바르지 않습니다. 33041320*512/1000/1000/1000=16.91


그래서 내가 바이트를 33041320 * 512얻는 다면 16917155840(나는 맞습니까?). 어느 것입니다 15.755GB. 점점 1.16GB줄어 듭니다. 정확한 값을 얻을 수있는 명령이 16.91GB있습니까?
SkrewEverything 8

@SkrewEverything 엄밀히 말하면, 16.91올바르지 않습니다. 그 이유는 finder1000 바이트를 1k (Snow Leopard에서 시작)로 취급하기 때문입니다 . 33041320*512/1000/1000/1000=16.91
David Dai

du --si는 리눅스에서 크기를 제공합니다. 위에서 계산하려면 33041320 * 500을 사용하십시오 (500 * 2 = 1000, 512 * 2 = 1024
이므로
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.