最新消息:yaf表单扩展中新增加了浮点数、日期和集合的校验。php yaf框架扩展实践三——表单

linux使用du命令查看文件的磁盘使用量

Linux 4344浏览 0评论

在linux中可以使用du查看文件的磁盘使用量, 通过man du可以查看到du的英文介绍estimate file space usage,也可以简单的理解为disk usage,取每个单词的首字母就是du,这样就容易记忆了。

1、du命令格式

du -hsaS 文件

其中各参数意思:

  • -h : human readable,容量的显示更加友好,会自动换算成G、M的单位显示
  • -s : summarize,列出总量,不列出子目录的容量,常用
  • -a : all,表示列出所有的文件,不仅仅是目录
  • -S:separate dirs,不统计子目录的容量,偶尔用到。

2、du命令测试

先建立一个测试目录,使用ls查看测试目录的文件:

$ ls -alh
du命令测试目录

du命令测试目录

其中test是一个空目录,里面没有档案。

查看该目录容量使用情况

$ du -h

4.0K    ./test
24K     .

du默认会列出该目录和所有子目录的情况。

其中点(.)目录表示当前目录,占用24K,这个容量是如何计算出来的呢?就是该目录下的档案和子目录的容量总和,再加上该目录自身的占用空间。上例的计算如下:

.bash_history + .bash_logout + .bashrc + .profile + test目录 + 点(.)目录自身
= 4 + 4 + 4 + 4 + 4 + 4
= 24K

为什么.bash_history这文件是4K,和上面用ls列出来的容量不一致呢?这个涉及到文件系统的知识,这里的blocksize是4K,就算档案里的内容没有4K,实际上也会占用一个block,所以就是4K了。需要详细了解的,可以去查下文件系统blocksize的相关资料。

仅查看该目录总量,不列出子目录

$ du -hs

24K     .

这样就只会列出指定目录的容量了。

仅查看该目录下档案总量,不包含子目录的容量

$ du -hS

4.0K    ./test
20K     .

这边点(.)目录显示是20K,因为排除掉了子目录(./test)

列出所有文件的容量,包括档案和子目录

$ du -ah

4.0K    ./test
4.0K    ./.bash_history
4.0K    ./.bashrc
4.0K    ./.bash_logout
4.0K    ./.profile
24K     .

查看单个档案的容量

$ du -h .profile

4.0K    .profile

这个比较不常用,因为通过ls命令也可以查看到档案的容量使用情况。

总结

总的来说,笔者最常使用的还是du -hs,用来查看目录的总容量非常方便。更多的使用情况可以使用man du查看手册。相对于df来说,du更注重查看单个目录的容量情况,关于df,可以参考这篇文章:linux使用df命令查看文件系统的磁盘使用量

转载请注明:快乐编程 » linux使用du命令查看文件的磁盘使用量

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址