You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何使用ls -sh查看同一目录会显示不同大小?

为何使用ls -sh查看同一目录会显示不同大小?

别慌,这不是你看错了,而是ls -sh在两种场景下显示的完全是两个不同的东西,我给你掰扯清楚:

  • 当你在My_dir目录里执行ls -sh时,输出里的total 386M是这个目录下所有文件的内容总大小,后面列出来的每个文件大小也是它们实际存储的音频数据的大小,这个是你感知到的“目录里内容的总大小”。

  • 而当你退到上级目录,执行ls -sh看到My_dir的大小是4K,这时候显示的是目录这个特殊文件本身的大小。在Linux里,目录本质上是一种存储条目信息的文件——它里面存的不是文件内容,而是文件名、指向文件实际数据的inode指针这些元数据。你的My_dir里只有5个文件,这些元数据加起来刚好占满一个文件系统的默认块(通常是4K),所以就显示4K啦。

如果想真正查看My_dir及其所有内容的总大小,别用ls,改用du -sh My_dir命令,它会递归计算所有文件和子目录的大小总和,出来的结果就和你在目录里看到的total一致了。

备注:内容来源于stack exchange,提问作者user1057182

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 11:44:31