Linux查看文件大小的命令-续
几年前,写了Linux中如何查看文件夹的大小这篇文章,这里再做点补充。
大家想要了解一个文件是多大,最直观的方式,就是看看Windows告诉咱们某个文件有多大。可以看到,这个文件大小是2.4GB。有了这个信息,再往下去看Linux中的大小就有了准绳。我测试的是一个仅包含一个语料库的压缩包的目录的大小。这个压缩包的信息如下:
我的client是一台SUSE Linux,先把这个压缩包拷贝到Linux本地硬盘下的一个目录中,可以看到信息如下:
[root]tmanager-yz# du -sh /tmp/TBD3/Pizza-and-Chili-corpus.tar.gz
2.5G /tmp/TBD3/Pizza-and-Chili-corpus.tar.gz
拷贝到mount的一个NFS export下之后,可以发现,同样命令回报的大小发生了变化。
[root]tmanager-yz# du -sh Pizza-and-Chili-corpus.tar.gz
3.7G Pizza-and-Chili-corpus.tar.gz
这是为什么呢?因为这个NFS export是一个PowerScale的cluster,`du –sh`命令返回的大小里,除了文件本身,还有protection overhead的部分。关于protection overhead的具体原理和细节,可以看这里。
我在lab里有一台PowerScale的cluster,那么我把同样的文件拷贝到cluster上,并且创建一个quota,然后,我们就可以看到这样的细节:
到这里,大家就看明白了,原来那3.7GB里,有1.2GB是protection overhead。
所以,结论就是当你在Linux下运行du –sh命令,查看文件大小的时候,需要注意你查看的文件所在的目录,如果是在NFS上,那么有可能返回的文件大小并不是实际的大小,其中还有可能有protection overhead。而在本地磁盘目录中的时候,du –sh返回的文件大小跟Windows下的属性框中的信息是一样的。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2009-11-06 neg eax sbb eax, eax
2009-11-06 详解LEA指令
2009-11-06 汇编语言基础之九- 关于栈指针的规律性的总结