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. Flutter: SliverAppBar 应用程序栏与滚动视图集成,以便它可以根据滚动偏移量在高度上变化

    API class _MyHomeState extends State<MyHome> with SingleTickerProviderStateMixin { @override W ...

  2. C++算法代码——选举学生会

    题目来自:https://www.luogu.com.cn/problem/P1271 题目描述 学校正在选举学生会成员,有 n(n\le 999)n(n≤999) 名候选人,每名候选人编号分别从 1 ...

  3. epoll原理详解及epoll反应堆模型

    本文转载自epoll原理详解及epoll反应堆模型 导语 设想一个场景:有100万用户同时与一个进程保持着TCP连接,而每一时刻只有几十个或几百个TCP连接是活跃的(接收TCP包),也就是说在每一时刻 ...

  4. javascript 十大经典排序

    首先生成一个数字数组: let arr = Array.from({length:20},x=>{return Math.ceil(Math.random()*10**2)}) console. ...

  5. winform解析json API数据

    {  "retCode" : "SUCCESS",  "msg" : "",  "data" : { ...

  6. Go 去找个对象吧

    前言 我的读者中应该大部分都是 Java 从业者,不知道写 Java 这些年是否真的有找到对象? 没找到也没关系,总不能在一棵树上吊死,我们也可以来 Go 这边看看,说不定会有新发现. 开个玩笑,本文 ...

  7. 使用 Tye 辅助开发 k8s 应用竟如此简单(六)

    续上篇,这篇我们来进一步探索 Tye 更多的使用方法.本篇我们将进一步研究 Tye 与分布式应用程序运行时 Dapr 如何碰撞出更精彩的火花. Newbe.Claptrap 是一个用于轻松应对并发问题 ...

  8. 微信小程序使用彩色图标(阿里巴巴 iconfont Symbol 的用法)微信小程序使用彩色图标(阿里巴巴 iconfont Symbol 的用法)

    前提 需要安装好 nodejs (略) 用于下载插件 安装插件 npm install mini-program-iconfont-cli --save-dev 初始化配置文件 npx iconfon ...

  9. 五. SpringCloud服务降级和熔断

    1. Hystrix断路器概述 1.1 分布式系统面临的问题 复杂分布式体系结构中的应用程序有数十个依赖关系,每个依赖关系在某些时候将不可避免地失败.这就造成有可能会发生服务雪崩.那么什么是服务雪崩呢 ...

  10. 微信小程序3D轮播图

    <!-- 轮播图 --> <swiper previous-margin='50px' next-margin='50px' bindchange="swiperChang ...