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. Windows 10 滚动截图工具

    Windows 10 滚动截图工具 Edge & Note & Clip https://www.runoob.com/docker/docker-architecture.html ...

  2. how to get svg text tspan x,y position value in js

    how to get svg text tspan x,y position value in js <svg xmlns="http://www.w3.org/2000/svg&qu ...

  3. 从微信小程序到鸿蒙js开发【06】——swiper&animator&marquee

    目录: 1.swiper轮播图 2.image-animator幻灯片 3.marquee跑马灯 4.nginx动静分离 1.swiper轮播图 微信小程序的swiper组件中只能放置swiper-i ...

  4. SQL EXPLAIN解析

    本文转载自MySQL性能优化最佳实践 - 08 SQL EXPLAIN解析 什么是归并排序? 如果需要排序的数据超过了sort_buffer_size的大小,说明无法在内存中完成排序,就需要写到临时文 ...

  5. dategrip的使用技巧

    原文链接:https://blog.csdn.net/weixin_44421461/article/details/109541903 数据表复制,可以直接用sql语句 1.复制表结构及数据到新表 ...

  6. 微信小程序中input标签高度设置

    如果没有设置高度所以显示的是控件自身的高度. 微信小程序input控件原始设置: 上图发现: 我只覆盖了官方input的height,而没有覆盖min-height; .query input{ bo ...

  7. 在 Svelte 中使用 CSS-in-JS

    你即便不需要,但你可以. 注意:原文发表于2018-12-26,随着框架不断演进,部分内容可能已不适用. CSS 是任何 Web 应用程序的核心部分. 宽泛而论,如果一个 UI 框架没有内置向组件添加 ...

  8. EF获取数据库表名和列名

    EF获取数据库表名和列名 新建 模板 小书匠 /// <summary>  /// 通过当前DBContext上下文获取对应数据库中所有得表  /// </summary>  ...

  9. nacos服务注册与发现之客户端

    服务注册 1.1 NamingService.registerInstance的方法为客户端提供的服务注册接口 1.2 客户端通过调用NamingService.registerService上报到n ...

  10. 分布式文件系统FastDFS简介、搭建、与SpringBoot整合实现图片上传

    之前大学时搭建过一个FastDFS的图片服务器,当时只是抱着好奇的态度搭着玩一下,当时搭建采用了一台虚拟机,tracker和storage服务在一台机器上放着,最近翻之前的博客突然想着在两台机器上搭建 ...