1. 介绍

du是用来查看文件或目录所占用磁盘空间的大小

du [-abcDhHklmsSx] [-L <符号连接>][-X <文件>][--block-size][--exclude=<目录或文件>]
[--max-depth=<目录层数>][--help][--version][目录或文件]

常用参数

参数 说明
-a -all 为每个指定文件显示磁盘使用情况,或者为目录中每个文件显示各自磁盘使用情况。
-b -bytes 显示目录或文件大小时,以byte为单位。
-c –total 除了显示目录或文件的大小外,同时也显示所有目录或文件的总和。
-D –dereference-args 显示指定符号连接的源文件大小。
-h –human-readable 以K,M,G为单位,提高信息的可读性。
-H –si 与-h参数相同,但是K,M,G是以1000为换算单位,而不是以1024为换算单位。
-k –kilobytes 以1024 bytes为单位。
-l –count-links 重复计算硬件连接的文件。
-L<符号连接> –dereference<符号连接> 显示选项中所指定符号连接的源文件大小。
-m –megabytes 以1MB为单位。
-s –summarize 仅显示总计,即当前目录的大小。
-S –separate-dirs 显示每个目录的大小时,并不含其子目录的大小。
-x –one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
-X<文件> –exclude-from=<文件> 在<文件>指定目录或文件。
--exclude=<目录或文件> 略过指定的目录或文件。
--max-depth=<目录层数> 超过指定层数的目录后,予以忽略。
--help 显示帮助。
--version 显示版本信息。

2. 示例:

2.1 -a and -s

# -a:显示目录占用的磁盘空间大小,还要显示其下目录和文件占用磁盘空间的大小

# -s:显示目录占用的磁盘空间大小,不要显示其下子目录和文件占用的磁盘空间大小
[root@centos /data]#du -ah /data/
10M /data/testfile
20M /data/time.log
5.0M /data/file.txt
35M /data/
[root@centos /data]#du -sh /data/ # 查看当前目录总共占的容量。而不单独列出各子项占用的容量
35M /data/
[root@centos /data]#du -ch /data/
35M /data/
35M total
[root@centos /data]#

2.2 列出 /data 目录中不包括 log 文件的目录的大小

[root@centos /data]#tree /data/
/data/
|-- file.txt
|-- testfile
`-- time.log 0 directories, 3 files
[root@centos /data]#du -ah /data/
10M /data/testfile
20M /data/time.log
5.0M /data/file.txt
35M /data/
[root@centos /data]#du -sh /data/ --exclude="*.log"
15M /data/
[root@centos /data]#

2.3 计算所有 log 的大小和总和

[root@centos /data]#find /data/ -type f -name "*.log"|xargs du -ch
20M /data/time.log
30M /data/time1.log
26M /data/time2.log
76M total
[root@centos /data]#
[root@centos /data]#ls /data/*.log|xargs du -ch
20M /data/time.log
30M /data/time1.log
26M /data/time2.log
76M total
[root@centos /data]#

2.4 想在一个屏幕下列出更多的关于 /data 目录及子目录大小的信息:

# -0(零)表示每列出一个目录的信息,不换行,而是直接输出下一个目录的信息。
[root@centos /data]#du -0h /data/
91M /data/[root@centos /data]#

2.5 --max-depth=n 表示只深入到第 n 层目录,此处设置为 0,即表示不深入到子目录。

[root@centos /data/logs]#du -h --max-depth=0 /data/
143M /data/
# 显示 /data/ 机器下面子目录的大小
[root@centos /data/logs]#du -h --max-depth=1 /data/ # 查看当前目录下一级子文件和子目录占用的磁盘容量。
128M /data/logs
143M /data/
[root@centos /data/logs]#

生产中常用的du命令的更多相关文章

  1. 开发过程中常用的Linux命令

    做Java开发好几年了,部署JavaWeb到服务器上,一般都选择Linux,Linux作为服务器真是不二之选,高性能,只要熟悉Linux,操作快捷,效率很高. 总结一下工作中常用的Linux命令备忘: ...

  2. 工作中常用的Linux命令:mkdir命令

    本文链接:http://www.cnblogs.com/MartinChentf/p/6076075.html (转载请注明出处) 在Linux系统中,mkdir命令用来创建一个目录或一个级联目录. ...

  3. 工作中常用的Linux命令:crontab命令

    本文链接:http://www.cnblogs.com/MartinChentf/p/6060252.html (转载请注明出处) crontab是一个用来设置.删除或显示供守护进程cron执行的定时 ...

  4. 工作中常用的Linux命令:ipcs/ipcrm命令

    本文链接:http://www.cnblogs.com/MartinChentf/p/6057100.html (转载请注明出处) ipcs 1. 命令格式 ipcs [resource-option ...

  5. 工作中常用的Linux命令:find命令

    本文链接:http://www.cnblogs.com/MartinChentf/p/6056571.html (转载请注明出处) 1.命令格式 find [-H] [-L] [-P] [-D deb ...

  6. Tcl与Design Compiler (十三)——Design Compliler中常用到的命令(示例)总结

    本文如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/  ,作者:IC_learner 本文将描述在Design Compliler中常用 ...

  7. 安卓日常开发和逆向中常用的shell命令与非shell命令

    简述shell 命令与 非shell命令区别 shell命令不用先adb shell进入界面执行 非shell命令必须要 adb shell进入界面执行 基础非shell命令 1.安装app adb ...

  8. 工作中常用的 Linux 命令

    awk 示例: env变量值如下,需要获得pkg_url的链接值: {"name": "michael", "sex": "mal ...

  9. 工作中常用的Linux命令

    1.从其他机器拷贝文件夹 格式: scp -r 文件夹名 用户名@机器名:/路径 范例: scp -rsearch work@zjm-testing-ps23.zjm.baidu.com:/home/ ...

随机推荐

  1. Vue Learning Paths

    Vue Learning Paths Vue Expert refs https://vueschool.io/articles/vuejs-tutorials/exciting-new-featur ...

  2. 打造NGK生态星空计划,高倍币VAST即将震撼上线!

    援引华盛顿邮报.彭博社.路透社以及CNN等知名媒体的报道,NGK官方近日宣布,为了完善NGK生态星空计划,NGK官方近日即将推出SPC的子币VAST,以鼓励更多的生态建设者参与. NGK官方相关负责人 ...

  3. spring boot插件开发实战和原理

    本文转载自spring boot插件开发实战和原理 实战:编写spring boot插件 为什么要编写boot插件 因为我们在开发的时候需要提供一些共同的功能,所以我们编写个共同的jar包.开发人员在 ...

  4. springboot学习过程随记

    1.整合shiro+jwt(若忘记需结合测试代码springboot-mybatisplus-shiro-demo看) 配置比较简单 定义一个类继承AuthorizingRealm 如下: (1)pu ...

  5. Centos8.2安装Mongodb4.4.2(社区版)

    1:下载 wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel80-4.4.2.tgz 官网地址: 2:解压 tar -zxv ...

  6. WPF窗口和用户控件事件相互触发

    问题1: WPF项目里有一个窗口和一个用户控件,窗口和用户控件里都有一个Button,点击窗口里的Button如何触发用户控件里Button的Click事件 解答: //窗口代码 public par ...

  7. go mod管理 init 和 包导入的关系

    你创建了一个文件的名字为:lisi001 如果你初始化项目名字为lisi, go mod init lisi 那么你导包的时候就得也用lisi import ( "lisi/path&quo ...

  8. 用c++解一元二次方程

    解方程 github项目地址 这两天得知初二的表妹学了一元二次方程,听说还不会解,我就想着试试用C语言编写解方程. 一元二次方程 用公式法 这种方法效果很好: #include"funct. ...

  9. 对于如何从SM2的pfx证书文件中解析公钥和私钥,并从二次加密的密文中解密

    首先呢,由于我的域名之前处理点问题,然后备案第二个网站时候,第一个网站没法访问,所以备案没过,阿里云告诉我要删除一个网站的备案,但是他没告诉我要删除主体,所以我的备案主体成了空壳主体,要传真或者发快递 ...

  10. 关于 FreeBSD 老版本如何安装软件

    关于 FreeBSD 不被支持版本如何安装软件: ALLOW_UNSUPPORTED_SYSTEM=yes写到/etc/ make.conf ​​​​ 如果提示没有make.conf 请手动新建一个文 ...