du命令概述
du命令作用是估计文件系统的磁盘已使用量,常用于查看文件或目录所占磁盘容量。
du命令与df命令不同,df命令是统计磁盘使用情况,详见linux命令详解之df命令。
du命令会直接到文件系统内查找所有文件数据,所以命令执行时会耗费一点儿时间。
在默认情况下,输出结果大小是以KB为单位的。如果想以MB为单位,使用-m参数即可,如果只想知道目录占了多少容量,使用-s参数即可。

du命令语法
du [选项] [文件或目录名称]
参数:
-a:--all, 列出所有的文件和目录容量大小而不仅仅列出目录容量大小,默认情况只是统计目录的容量大小,参考示例1。
-B:--block-size=SIZE,指定单位大小。
-b:--bytes,以字节为单位列出文件和目录的容量大小。
-c:--total,除了列出文件和目录的容量大小外,列出总的容量大小,参考示例2。
-h:--human-readable,以人们易读的方式(KB,MB,GB)显示容量大小,参考示例3。
--si:和-h参数类似,但是单位换算时是以1000进行换算,而不是1024。
-k:和--block-size=1k类似,以KB为单位。
-m:和--block-size=1m类似,以MB为单位。
-s:--summarize,仅列出总量,而不列出每个目录和文件的大小,参考示例4。
-S:--separate-dirs,和-s参数类似,但是统计时不包含子目录的容量大小。
--max-depth=N:类似于默认情况的du,但是,递归显示时的递归深度小于等于N。如果--max-depth=0,就相当于-s参数,只统计总量而已,参考示例4。如果--max-depth=1,就相当于du -s 目录/*,参考示例5。

du命令示例

test目录里的内容如下

test/dir1
/dir1-dira
/dir1-dira-file1
/dir1-file1
/dir1-file2
/dir2
/file1
/file2
[root@localhost test]# ll -R # test目录下所有文件
.:
total 216
drwxr-xr-x 3 root root 4096 Apr 18 05:47 dir1
drwxr-xr-x 2 root root 4096 Apr 18 05:44 dir2
-rwxr-xr-x 1 root root 91272 Apr 18 05:45 file1
-rwxr-xr-x 1 root root 91272 Apr 18 05:46 file2 ./dir1:
total 864
drwxr-xr-x 2 root root 4096 Apr 18 05:48 dir1-dira
-rwxr-xr-x 1 root root 55472 Apr 18 05:46 dir1-file1
-rwxr-xr-x 1 root root 801528 Apr 18 05:47 dir1-file2 ./dir1/dir1-dira:
total 4
-rw-r--r-- 1 root root 0 Apr 18 05:48 dir1-dira-file1 ./dir2:
total 0

示例1:列出目录下所有文件和目录的容量大小

[root@localhost test]# du  #默认情况下,只统计目录的容量大小。
8 ./dir2
12 ./dir1/dir1-dira
876 ./dir1
1092 .
[root@localhost test]# du -a #统计目录和文件的容量大小。
100 ./file2
8 ./dir2
100 ./file1
4 ./dir1/dir1-dira/dir1-dira-file1
12 ./dir1/dir1-dira
792 ./dir1/dir1-file2
64 ./dir1/dir1-file1
876 ./dir1
1092 .

示例2:统计各文件的大小,并显示总大小

[root@localhost test]# du  /home/test/    # 默认,不显示总大小
8 /home/test/dir2
12 /home/test/dir1/dir1-dira
876 /home/test/dir1
1092 /home/test/
[root@localhost test]# du -c /home/test/ #最下面显示总大小total
8 /home/test/dir2
12 /home/test/dir1/dir1-dira
876 /home/test/dir1
1092 /home/test/
1092 total

示例3:以易读的方式显示容量大小

[root@localhost test]# du -h /home/test
8.0K /home/test/dir2
12K /home/test/dir1/dir1-dira
876K /home/test/dir1
1.1M /home/test

示例4:仅显示目录的总大小

[root@localhost test]# du -s /home   #通过-s参数只统计总量
3208 /home [root@localhost test]# du --max-depth=0 /home #通过指定递归深度方式
3208 /home

示例5:显示指定目录下每个文件或目录的容量大小

[root@localhost test]# du -s /*   #使用-s参数
8320 /bin
6659 /boot
152 /dev
170328 /etc
3208 /home
142868 /lib
25868 /lib64
16 /lost+found
8 /media
0 /misc
16 /mnt
0 /net
16 /opt
0 /proc
200 /root
36680 /sbin
0 /selinux
8 /srv
0 /sys
436 /tmp
2498560 /usr
72792 /var [root@localhost test]# du --max-depth=1 / #使用指定递归深度方式
436 /tmp
142868 /lib
0 /net
16 /opt
6659 /boot
0 /sys
8 /srv
8 /media
16 /mnt
25868 /lib64
36680 /sbin
2498560 /usr
170328 /etc
16 /lost+found
72792 /var
0 /selinux
8320 /bin
0 /proc
0 /misc
200 /root
3208 /home
152 /dev
2966147 /

示例6:显示指定目录下每个文件或目录的容量大小,并且以易读方式显示(常用)。

[root@localhost test]# du -sh /*
8.2M /bin
6.6M /boot
152K /dev
167M /etc
3.2M /home
140M /lib
26M /lib64
16K /lost+found
8.0K /media
0 /misc
16K /mnt
0 /net
16K /opt
0 /proc
200K /root
36M /sbin
0 /selinux
8.0K /srv
0 /sys
436K /tmp
2.4G /usr
72M /var

linux命令详解之du命令的更多相关文章

  1. Linux命令详解之—tail命令

    tail命令也是一个非常常用的文件查看类的命令,今天就为大家介绍下Linux tail命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux tail命令主要用来从指定点开始将文 ...

  2. Linux命令详解之—less命令

    Linux下还有一个与more命令非常类似的命令--less命令,相比于more命令,less命令更加灵活强大一些,今天就给大家介绍下Linux下的less命令. 更多Linux命令详情请看:Linu ...

  3. Linux命令详解之—more命令

    Linux more命令同cat命令一样,多用来查看文件内容,本文就为大家介绍下Linux more命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux的more命令类似 ca ...

  4. 【转】linux命令详解:md5sum命令

    [转]linux命令详解:md5sum命令 转自:http://blog.itpub.net/29320885/viewspace-1710218/ 前言 在网络传输.设备之间转存.复制大文件等时,可 ...

  5. Linux命令详解之—cat命令

    cat命令的功能是连接文件或标准输入并打印,今天就为大家介绍下Linux中的cat命令. 更多Linux命令详情请看:Linux命令速查手册 Linux 的cat命令通常用来显示文件内容,也可以用来将 ...

  6. Linux命令详解之—pwd命令

    Linux的pwd命令也是一个非常常用的命令,本文为大家介绍下Linux中pwd命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux pwd命令用于显示工作目录. 执行pwd指 ...

  7. Linux命令详解之–cd命令

    cd命令是linux实际使用当中另一个非常重要的命令,本文就为大家介绍下Linux中cd命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux cd命令用于切换当前工作目录至 d ...

  8. Linux命令详解之–ls命令

    今天开始为大家介绍下Linux中常用的命令,首先给大家介绍下Linux中使用频率最高的命令--ls命令. 更多Linux命令详情请看:Linux命令速查手册 linux ls命令用于显示指定工作目录下 ...

  9. linux shell 脚本攻略学习12--文件权限详解,chmod命令详解,chown命令详解,chattr命令详解

    文件权限详解 一.chmod命令详解 文件权限和所有权是Unix/Linux文件系统最显著的特征之一.linux中的每一个文件都与多种权限类型相关联,在这些权限中主要分类为3种: 用户(User)是文 ...

随机推荐

  1. Nginx 反向代理与负载均衡的配置

    已经很久没有写博了,因为最近学车加上各种问题一直没时间, 今天刚好想起有好多的东西还没来得及记录.回到正题: Nginx是一个非常强大的web轻量级服务器,许多大厂也用Nginx进行负载均衡和反向代理 ...

  2. GRUB配置与应用,启动故障分析解决

    一.GRUB启动位置 GRUB是现今大多数Linux系统采用的自举程序,这里先来看一下Linux的程序顺序: 执行顺序    动作 固件Firmware(CMOS/BIOS) →  POST(Pwer ...

  3. LVS负载均衡部署

    一.lvs-nat模式 1.1.环境介绍 本实验用三台虚拟机完成,一台虚拟机模拟lvs调度器,两块网卡,一块模拟公网一块模拟私网,公网地址192.168.0.201/24,私网地址192.168.4. ...

  4. python 验证码识别示例(三) 简单验证码识别

    今天介绍一个简单验证的识别. 主要是标准的格式,没有扭曲和变现.就用 pytesseract 去识别一下. 验证码地址:https://user.www.gov.cn/sso/verifyimg_ed ...

  5. .gitignore 标准模板 -适用于SpringBoot+Vue项目 -Idea+VSCode开发

    .gitignore 标准模板 -适用于SpringBoot+Vue项目 node_modules/ target/ !.mvn/wrapper/maven-wrapper.jar ### STS # ...

  6. 利用反射与dom4j读取javabean生成对应XML

    项目中需要自定义生成一个xml,要把Javabean中的属性拼接一个xml,例如要生成以下xml <?xml version="1.0" encoding="gb2 ...

  7. class struct Equals

    { class clsA { private int _i; public int I { set { _i = value; } get { return _i; } } } struct strc ...

  8. 跑起来JEE论坛、商城和网站的经验总结

    前言:昨天我们老大给我分配了几个任务,让我把几个公司的项目运行起来跑一下,几个项目都是JEE上开源的,三个项目,一个网站内容系统.一个BBS论坛.一个jspgou商城,这三个都是开源的,倒腾了两天,今 ...

  9. Entity 类中加了@Id 注解后仍然出现org.hibernate.AnnotationException: No identifier specified for entity 错误

    查看网上的资料,应该是报错的实体类com.example.domain.p.User中没有添加加主键的注解@Id,这个是必须的.但是我的实体类中明明已经添加了@Id,为什么还会报这个错误呢? 后来检查 ...

  10. OpenCV 学习笔记(1-1)opecv3.41及其扩展库在VS2015下配置

    其他正常 opencv_aruco341.lib opencv_bgsegm341.lib opencv_bioinspired341.lib opencv_calib3d341.lib opencv ...