首页 > 系统相关 >Linux du命令:统计目录或文件所占磁盘空间大小

Linux du命令:统计目录或文件所占磁盘空间大小

时间:2022-10-20 12:45:55浏览次数:48  
标签:命令 子目录 磁盘空间 Linux 磁盘 du 目录 统计

du 是统计目录或文件所占磁盘空间大小的命令。

需要注意的是,使用"ls -r"命令是可以看到文件的大小的。但是大家会发现,在使用"ls -r"命令査看目录大小时,目录的大小多数是 4KB,这是因为目录下的子目录名和子文件名是保存到父目录的 block(默认大小为 4KB)中的,如果父目录下的子目录和子文件并不多,一个 block 就能放下,那么这个父目录就只占用了一个 block 大小。

大家可以将其想象成图书馆的书籍目录和实际书籍。如果我们用"ls-l"命令査看,则只能看到这些书籍占用了 1 页纸的书籍目录,但是实际书籍到底有多少是看不到的,哪怕它堆满了几个房间。

但是我们在统计目录时,不是想看父目录下的子目录名和子文件名到底占用了多少空间,而是想看父目录下的子目录和子文件的总磁盘占用量大小,这时就需要使用 du 命令才能统计目录的真正磁盘占用量大小。

du 命令的格式如下:

[root@localhost ~]# du [选项] [目录或文件名]

选项:
  • -a:显示每个子文件的磁盘占用量。默认只统计子目录的磁盘占用量
  • -h:使用习惯单位显示磁盘占用量,如 KB、MB 或 GB 等;
  • -s:统计总磁盘占用量,而不列出子目录和子文件的磁盘占用量

【例 1】

[root@localhost ~]# du
#统计当前目录的总磁盘占用量大小,同时会统计当前目录下所有子目录的磁盘占用量大小,不统计子文件
#磁盘占用量的大小。默认单位为KB
20 ./.gnupg
#统计每个子目录的大小
24 ./yum.bak
8 ./dtest
28 ./sh
188
#统计当前目录总大小


【例 2】

[root@localhost ~]# du -a
#统计当前目录的总大小,同时会统计当前目录下所有子文件和子目录磁盘占用量的大小。默认单位为 KB

4 ./.bashjogout
36 ./install.log
4 ./.bash_profile
4 ./.cshrc
…省略部分输出…
188


【例 3】

[root@localhost ~]# du -sh
#只统计磁盘占用量总的大小,同时使用习惯单位显示
188K .

du命令和df命令的区别

有时我们会发现,使用 du 命令和 df 命令去统计分区的使用情况时,得到的数据是不一样的。那是因为df命令是从文件系统的角度考虑的,通过文件系统中未分配的空间来确定文件系统中已经分配的空间大小。也就是说,在使用 df 命令统计分区时,不仅要考虑文件占用的空间,还要统计被命令或程序占用的空间(最常见的就是文件已经删除,但是程序并没有释放空间)。

而 du 命令是面向文件的,只会计算文件或目录占用的磁盘空间。也就是说,df 命令统计的分区更准确,是真正的空闲空间。

 

摘自:http://c.biancheng.net/view/884.html

标签:命令,子目录,磁盘空间,Linux,磁盘,du,目录,统计
From: https://www.cnblogs.com/sword0077/p/16809462.html

相关文章

  • 使用linux系统安装docker
    使用yum/apt安装ubuntu自带的源里面有docke.io,这个是Debian团队维护的docker,我们用官方团队维护的docker-ce。打开阿里云的docker-ce镜像站(https://developer.aliyun.co......
  • hdu 1979 DFS + 字典树剪枝
    ​​http://acm.hdu.edu.cn/showproblem.php?pid=1979​​FilltheblanksTimeLimit:3000/1000MS(Java/Others)    MemoryLimit:32768/32768K(Java/Others)Tota......
  • Linux 搬砖常用Shell-扩展
    1.基础语法1.1.循环#!/bin/bashforiin`seq110`doecho"xxxx"done1.2.SHELL中的特定变量$#传递到脚本的参数个数$*以一个单字符串显示所有向脚本传递的参数。与......
  • 解决linux系统时间不对的问题
    输入date查看时间,发现不对,相差甚远!(当前时间2019/09/0611:19)   安装ntpdate:   删除etc/localtime文件,并复制shanghai时区文件替换到这里。   然后ntp......
  • linux下rsync的同步
    rsync是linux系统下的数据镜像备份工具。使用快速增量备份工具RemoteSync可以远程同步,支持本地复制,或者与其他SSH、rsync****主机同步文件下载地址:链接:https://pan.bai......
  • Linux笔记-top命令信息详解
    目录参考资料top命令详解使用/proc/self/status注入代码监控某段代码执行前后进程内存状态参考资料https://segmentfault.com/a/1190000013504502https://blog.csdn.net......
  • Linux shell 常用函数
    *以下函数或文件,在某些发行版本系统不支持,请先测试确认是否可用。 ####  生成连续的数字  ####  方式一: [1]正序:{1..16}倒序:{16..1}示例:forni......
  • Duplicate key Validate JSPs in ‘xxxxexploded‘【已解决】
    Internalerror(java.lang.IllegalStateException):DuplicatekeyValidateJSPsin'Class_Student_Management_System:warexploded'java.lang.IllegalStateException:......
  • 如何查看linux kernel邮件列表【转】
    转自:https://blog.csdn.net/jasonactions/article/details/1207764341.前言本文主要总结浏览kernelpatch的方法,以此希望促成自己养成阅读patch的习惯。用一个朋友的话说......
  • 已整理-Linux正则表达式
     目录:1、基本正则表达式2、扩展正则表达式3、示例 1、基本正则表达式1.1、字符匹配.匹配任意单个字符,不含空格[]......