首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ls -lh和du -sh有什么区别?

ls -lh和du -sh有什么区别?
EN

Ask Ubuntu用户
提问于 2019-08-06 15:17:44
回答 1查看 6.3K关注 0票数 5
代码语言:javascript
复制
$ ls -lh file1.tar

-rw-r--r-- 1 wnice wnice 40K Aug  6 20:41 file1.tar

$ du -sh file1.tar

80K     file1.tar

为什么它显示相同文件的不同大小?请帮我理解

EN

回答 1

Ask Ubuntu用户

发布于 2019-08-06 15:57:27

du命令显示给定文件使用了多少磁盘空间。

相反,ls命令显示文件的大小。所使用的空间可以大于文件大小,这取决于所使用的文件系统。

例如,我们可以创建一个大小为1字节的文件(文件中只有一个换行符):

代码语言:javascript
复制
echo > tmp.txt

然后使用ls -l检查它的大小,它显示一个字节的大小:

代码语言:javascript
复制
ls -l tmp.txt 
-rw-r--r-- 1 elias elias 1 aug  6 17:50 tmp.txt

然后使用du检查已使用的空间:

代码语言:javascript
复制
du -h tmp.txt 
4,0K    tmp.txt

所以在这个例子中使用的磁盘空间是4千字节,尽管文件大小只有一个字节。

票数 7
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1163839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档