du 輸出錯誤?

du 輸出錯誤?

我認為我的 du 命令很混亂。

% du -shc DIR ...
...
6123941496      total

% du -shc DIR ...
...
6.1G    total

% du -sc --si DIR ...
...
6.6G    total

我嘗試LANG=C在電子表格中給出並仔細檢查結果。看起來 -h 已經使用 1000 的冪(--si)輸出,而 --si 給出了錯誤的答案。我認為正確的答案應該是 -h 為 5.7G,--si 為 6.1G。那麼這裡會發生什麼事呢?

% du --version
du (GNU coreutils) 8.20
...

% uname -a
Linux XXX 3.9-1-amd64 #1 SMP Debian 3.9.8-1 x86_64 GNU/Linux

答案1

使用開關重複您的測試--apparent-size

$ du -shc --apparent-size DIR ...

摘自 du 手冊頁

--apparent-size
       print  apparent sizes, rather than disk usage; although the apparent size is
       usually smaller, it may be larger due to holes in (`sparse') files, internal 
       fragmentation, indirect blocks, and the like

相關內容