加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

linux – 以兆字节显示文件夹使用情况的正确方法

发布时间:2021-03-14 08:02:44 所属栏目:Linux 来源:网络整理
导读:我正在使用du -bs来计算文件夹大小. du -bs /folder 结果是96342835字节…所以MB是(/ 1024/1024)91,87MB. 好的,但是当我使用的时候 du -hs /folder 结果不同. 99MB 要么 du -s taxikondrat.cz/ 100980 KBytes = 98,61MB 我尝试了不同的方法.在每一个我得到

我正在使用du -bs来计算文件夹大小.

du -bs /folder

结果是96342835字节…所以MB是(/ 1024/1024)91,87MB.

好的,但是当我使用的时候

du -hs /folder

结果不同. 99MB
要么

du -s taxikondrat.cz/

100980 KBytes = 98,61MB

我尝试了不同的方法.在每一个我得到不同的结果.例如.

find -type f -print0 | xargs -0 stat --print='%sn' | awk '{total+=$1} END {print total}'

我得到96059200字节,所以91,60MB

ls -ARgo "$@" | awk '{q += $3} END {print q}'

96338739字节,87 MB.舍入后相同,但在字节上差别不大.

作为蛋糕上的樱桃是谷歌:)

那么,这是真的吗?为什么会出现这种差异,哪种方法最准确?

解决方法

你正在比较苹果和橘子.

请注意,ls -s将根据文件中实际数据的长度给出文件的大小.

默认情况下,du命令将提供基于大小的磁盘使用情况.由于磁盘空间是以块的形式分配的,并且文件的长度几乎不是块大小的整数倍,因此最终会得到一个仅部分填充数据但不能被其他文件使用的块.
换句话说,如果文件系统的块大小为512字节,则1字节长度的文件将占用磁盘上的512字节,与511字节的文件相同.一个513字节的文件将占用2个块和1024个字节的磁盘空间.

总和du文件磁盘使用率几乎总是大于ls -s文件文件大小的总和,特别是当你有许多(小)文件和/或非常大的块大小时.

使用du -b开关不会计算块,但行为类似于ls -s:

-b equivalent to --apparent-size --block-size=1
--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 frag

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读