日常工作问题解决:du命令详解
du命令详解
原文链接:https://blog.csdn.net/linuxnews/article/details/51207738
1、导读
du命令是检查硬盘使用情况,统计文件或目录及子目录使用硬盘的空间大小。参数的不同组合,可以更快的提高工作效率,以下仅列出了经常使用到的参数,如需更详细的信息,请用man du命令来获得。
1.1 命令格式
du [选项][文件]
1.2 命令功能
显示每个文件和目录的磁盘使用空间。
1.3 命令参数
| 参数 | 说明 |
|---|---|
| -a | 显示所有目录或文件的大小 |
| -b | 以byte为单位,显示目录或文件的大小 |
| -c | 显示目录或文件的总和 |
| -k | 以KB为单位输出 |
| -m | 以MB为单位输出 |
| -s | 仅显示目录或文件的总计数值 |
| -h | 以K,M,G为单位,提高信息可读性 |
| -x | 跳过不同的文件系统目录 |
| -S | 显示目录的大小,但不含子目录大小 |
| -D | 显示指定符号链接的源文件大小 |
2、实例
2.1 实例1:显示目录或者文件所占空间
[root@GS-NMS-IP-COL1 ~]# du
4 ./.config/gnome-session/saved-session
8 ./.config/gnome-session
4 ./.config/gnome-disk-utility/ata-smart-ignore
8 ./.config/gnome-disk-utility
4 ./.config/ibus/bus
8 ./.config/ibus
.......
.......
4 ./.gnome2/nautilus-scripts
44 ./.gnome2
4 ./Music
4 ./Videos
20 ./.cache
16 ./.gnupg
8 ./.abrt
4 ./.kde/share/config
8 ./.kde/share
12 ./.kde
122048 .
说明:只显示当前home目录及子目录的大小,最下面的122048为当前目录总计数
2.2 实例2:显示指定文件所占空间
[root@GS-NMS-IP-COL1 saved-session]# du /etc/inittab
4 /etc/inittab
2.3 实例3:查看指定目录所占空间
[root@db1 saved-session]# du /etc/cups
4 /etc/cups/ssl
4 /etc/cups/interfaces
4 /etc/cups/ppd
32 /etc/cups``bash
2.4 实例4:显示文件和目录
[root@GS-NMS-IP-COL1 saved-session]# du -ah /tmp
4.0K /tmp/caucho
8.0K /tmp/vmware-root/vmware-apploader-20619.log
8.0K /tmp/vmware-root/vmware-apploader-23646.log
8.0K /tmp/vmware-root/vmware-apploader-21681.log
8.0K /tmp/vmware-root/vmware-apploader-18072.log
8.0K /tmp/vmware-root/vmware-apploader-17068.log
8.0K /tmp/vmware-root/vmware-apploader-18888.log
8.0K /tmp/vmware-root/vmware-apploader-16062.log
8.0K /tmp/vmware-root/vmware-apploader-22334.log
8.0K /tmp/vmware-root/vmware-apploader-14378.log
....
2.5 实例5:显示两个目录所占磁盘空间大小
[root@GS-NMS-IP-COL1 saved-session]# du /etc/yum /etc/yum.repos.d
4 /etc/yum/vars
4 /etc/yum/protected.d
16 /etc/yum/pluginconf.d
32 /etc/yum
12 /etc/yum.repos.d
2.6 实例6:var目录中的某个文件太大,就可以使用如下命令查看
[root@GS-NMS-IP-COL1 saved-session]# du -s /tmp/*|sort -nr
252 /tmp/vmware-root
196 /tmp/hsperfdata_slview
68 /tmp/hsperfdata_root
16 /tmp/lost+found
4 /tmp/pulse-xA8fXLLVAVFy
4 /tmp/pulse-BZ3Ruffbpuey
4 /tmp/orbit-gdm
4 /tmp/caucho
4 /tmp/_cafenv-appconfig_
说明:sort -nr
从大到小排列倒叙排列,将占用磁盘空间最大的文件最先显示出来,即可及时处理。运维当中,非常重要的命令,需牢记
3、du常用举例
3.1 想看当前目录下所有目录以及子目录的大小:
du -h .
“.”代表当前目录下。也可以换成一个明确的路径
-h表示用K、M、G的人性化形式显示
3.2 只想看当前目录下abc目录的大小,并不想看其他目录以及其子目录:
du -ch abc | tail -n 1
此种方法需要管道技术来管道du和tail两个命令来实现。
-c 表示会列出文件空间大小的总和,用于计算几个文件的大小之和
du -sh abc
-s表示总结的意思,即只列出一个目录中所有文件的空间大小的总值
du -h -max-depth=0 abc
-max-depth=n表示只深入到第n层目录,此处设置为0,即表示不深入到子目录。
3.3 列出abc目录及其子目录下所有目录和文件的大小
du -ah abc
-a表示路径下的所有包括目录和文件
3.4 列出所有abc目录中的目录名不包括xyz字符串的目录的大小
du -h –exclude=’*xyz*’
3.5 想在一个屏幕下列出更多的关于abc目录及子目录大小的信息
du -0h abc
-0(杠零)表示每列出一个目录的信息,不换行,而是直接输出下一个目录的信息。
备注: du usage:
用法:du [选项]... [文件]...
或:du [选项]... --files0-from=F
总结每个<文件>的磁盘用量,目录则取总用量。
长选项必须用的参数在使用短选项时也是必需的。
| 短选项 | 长选项 | 说明 |
|---|---|---|
| -a, | --all | 输出所有文件的磁盘用量,不仅仅是目录 |
| --apparent-size | 显示表面用量,而并非是磁盘用量;虽然表面用量通常会小一些,但有时它会因为稀疏文件间的"洞"、内部碎片、非直接引用的块等原因而变大。 | |
| -B, | --block-size=大小 | 使用指定字节数的块 |
| -b, | --bytes | 等于--apparent-size --block-size=1 |
| -c, | --total | 显示总计信息 |
| -D, | --dereference-args | 解除命令行中列出的符号连接 |
| --files0-from=F | 计算文件F 中以NULL结尾的文件名对应占用的磁盘空间,如果F 的值是"-",则从标准输入读入文件名 | |
| -H | 等于--dereference-args (-D) | |
| -h, | --human-readable | 以可读性较好的方式显示尺寸(例如:1K 234M 2G) |
| --si | 类似-h,但在计算时使用1000 为基底而非1024 | |
| -k | 等于--block-size=1K | |
| -l, | --count-links | 如果是硬连接,就多次计算其尺寸 |
| -m | 等于--block-size=1M | |
| -L, | --dereference | 找出任何符号链接指示的真正目的地 |
| -P, | --no-dereference | 不跟随任何符号链接(默认) |
| -0, | --null | 将每个空行视作0 字节而非换行符 |
| -S, | --separate-dirs | 不包括子目录的占用量 |
| -s, | --summarize | 只分别计算命令列中每个参数所占的总用量 |
| -x, | --one-file-system | 跳过处于不同文件系统之上的目录 |
| -X, | --exclude-from=文件 | 排除与指定文件中描述的模式相符的文件 |
| --exclude=PATTERN | 排除与PATTERN 中描述的模式相符的文件 | |
| --max-depth=N | 显示目录总计(与--all 一起使用计算文件)当N 为指定数值时计算深度为N;--max-depth=0 --summarize | |
| --time | 显示目录或该目录子目录下所有文件的最后修改时间 | |
| --time=WORD | 显示WORD 时间,而非修改时间:WORD类型为atime,access,use,ctime 或status | |
| --time-style=样式 | 按照指定样式显示时间(样式解释规则同"date"命令):类型为:full-iso,long-iso,iso,+FORMAT | |
| --help | 显示此帮助信息并退出 | |
| --version | 输出版本信息并退出 |
说明:
du所显示的数值是来自 --block-size、DU_BLOCK_SIZE、BLOCK_SIZE
及 BLOCKSIZE 环境变量中第一个可用的 SIZE 单位。
否则,默认单位是 1024 字节(或是 512,若设定 POSIXLY_CORRECT 的话)。
SIZE 可以是一个可选的整数,后面跟着以下单位中的一个:
KB 1000,K 1024,MB 10001000,M 10241024,还有 G、T、P、E、Z、Y。
日常工作问题解决:du命令详解的更多相关文章
- LINUX的磁盘管理du命令详解
LINUX的磁盘管理du命令详解 du(disk usage)命令可以计算文件或目录所占的磁盘空间.没有指定任何选项时, 它会测量当前工作目录与其所有子目录,分别显示各个目录所占的快数,最后才显示工作 ...
- df 和 du 命令详解
df命令详细用法 a:显示全部的档案系统和各分割区的磁盘使用情形 i:显示i -nodes的使用量 k:大小用k来表示 (默认值) t:显示某一个档案系统的所有分割区磁盘使用量 x:显示不是某一个档案 ...
- linux超级块和inode 详解 和 df 、du 命令详解与环境变量
一.inode块,Unix文件的核心. 首先需要明白的是,在Unix操作系统中的任何资源都被当作文件来管理.如目录.光驱.终端设备等等,都被当作是一种文件.从这方面来说,Unix操作系统中的所有的目录 ...
- du命令详解
基础命令学习目录首页 原文链接:https://blog.csdn.net/linuxnews/article/details/51207738 导读du命令是检查硬盘使用情况,统计文件或目录及子目录 ...
- Linux du命令详解
1.命令:du 2.命令功能:显示每个文件和目录的磁盘使用空间. 3.命令参数 -a或-all #显示目录中个别文件的大小. -b或-bytes #显示目录或文件大小时,以byte为单位. -c或-- ...
- du 命令详解
du : show disk usage 作用:统计目录或文件所占用磁盘空间的大小. 语法:du 参数 选项 参数: -a 为每个制定文件显示磁盘使用情况, 或者为目录中每个文件显示各自磁盘使用情况 ...
- Git的使用以及常用命令(详解)
一. 版本控制工具 什么是版本控制系统? 版本控制系统(Version Control System):是一种记录一个或若干文件内容变化,以便将来查阅特定版 本修订情况的系统.版本控制系统不仅可以应用 ...
- linux命令详解之du命令
du命令概述du命令作用是估计文件系统的磁盘已使用量,常用于查看文件或目录所占磁盘容量.du命令与df命令不同,df命令是统计磁盘使用情况,详见linux命令详解之df命令.du命令会直接到文件系统内 ...
- Usermod 命令详解 ------工作中修改shell时用 usermod -s /bin/csh home
Usermod 命令详解 2012-09-11 11:01:36 标签:usermod 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.htt ...
随机推荐
- hadoop笔记-hdfs文件读写
概念 文件系统 磁盘进行读写的最小单位:数据块,文件系统构建于磁盘之上,文件系统的块大小是磁盘块的整数倍. 文件系统块一般为几千字节,磁盘块一般512字节. hdfs的block.pocket.chu ...
- Mac佳软之Understand---Android源码分析阅读神器
下载地址, 密码:gebp 供大家体验, 请大家支持正版!!! https://www.jianshu.com/p/06f25d9131de
- create an oauth app
github可以对自己的服务进行oauth认证,创建oauth认证的方式如下: github -> Settings -> Developer settings -> Develop ...
- weui-wxss框架实现博远企信小程序
- CSPS2019谢幕记
留坑待填. 开始填坑. Day -1 最后一场模拟题.T1花2h切掉,T2啥都不会,T3看出部分解法然后写了暴搜,教练没放子任务,得了45,然后就$rk3$了. 晚上疯狂写板子,1.5h写了8份板子. ...
- [大数据相关] Hive中的全排序:order by,sort by, distribute by
写mapreduce程序时,如果reduce个数>1,想要实现全排序需要控制好map的输出,详见Hadoop简单实现全排序. 现在学了hive,写sql大家都很熟悉,如果一个order by解决 ...
- 多线程-Thread和ThreadPool
多线程原理 多线程都是基于委托的. 多线程优缺点 缺点: 1.导致程序复杂,开发调试维护困难,特别是线程交互. 2.线程过多导致服务器卡死,因为占用CPU 内存等资源. 优点: 1.良好的交互,特别对 ...
- OPPO数据中台之基石:基于Flink SQL构建实数据仓库
小结: 1. OPPO数据中台之基石:基于Flink SQL构建实数据仓库 https://mp.weixin.qq.com/s/JsoMgIW6bKEFDGvq_KI6hg 作者 | 张俊编辑 | ...
- Android插件化技术——原理篇
<Android插件化技术——原理篇> 转载:https://mp.weixin.qq.com/s/Uwr6Rimc7Gpnq4wMFZSAag?utm_source=androi ...
- Django学习笔记009-django models进行数据库增删查改
引入models的定义 from app.models import myclass class myclass(): aa = models. CharField (max_length=No ...