df

    df用于显示文件系统的整体磁盘使用量。

基本用法

df [选项] [目录/文件]

其常用选项如下所示:

选项 说明
-a, --all 显示所有文件系统,包括/proc等虚拟文件系统
-h, --human-readable 以易读的形式进行显示
-k 以KB为单位显示各文件系统
-m 以MB为单位显示各文件系统
-t, --type=TYPE 仅显示指定文件系统类型的文件系统
-T, --print-type 显示各文件系统的类型
-x, --exclude-type=TYPE 显示排除指定的文件系统类型

示例用法

1、显示磁盘整体使用量和对应的文件系统类型

[root@localhost ~]# df -h -T
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/sda2 xfs 275G 23G 253G 9% /
devtmpfs devtmpfs 63G 0 63G 0% /dev
tmpfs tmpfs 63G 4.0K 63G 1% /dev/shm
tmpfs tmpfs 63G 324M 63G 1% /run
tmpfs tmpfs 63G 0 63G 0% /sys/fs/cgroup
/dev/sda1 vfat 500M 9.8M 490M 2% /boot/efi
/dev/sdb1 xfs 15T 4.2G 15T 1% /home/data
/dev/loop0 ext4 1.9G 6.1M 1.7G 1% /srv/node/swiftloopback
tmpfs tmpfs 13G 32K 13G 1% /run/user/1000
tmpfs tmpfs 13G 36K 13G 1% /run/user/0
tmpfs tmpfs 13G 12K 13G 1% /run/user/42

以上这种用法也常用来查看系统的挂载点。,另外也可以使用命令lsblk

2、排除文件类型为tmpfs的文件系统类型

[root@localhost ~]# df -h -x tmpfs
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda2 275G 23G 253G 9% /
devtmpfs 63G 0 63G 0% /dev
/dev/sda1 500M 9.8M 490M 2% /boot/efi
/dev/sdb1 15T 4.2G 15T 1% /home/data
/dev/loop0 1.9G 6.1M 1.7G 1% /srv/node/swiftloopback

3、仅指定类型的文件系统

[root@localhost ~]# df -h -t xfs
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda2 275G 23G 253G 9% /
/dev/sdb1 15T 4.2G 15T 1% /home/data

du

    du全称disk usage,用于显示文件系统的硬盘使用量,而最常见的功能是用查看目录使用量。

基本用法

du [选项] [目录/文件]

其常用选项如下所示:

选项 说明
-a, --all 显示所有文件与文件夹容量
-c, --total 除显示目录或文件大小外,也显示所有目录或文件的总和
-h, --human-readable 以易读的形式进行显示
-k 以KB形式进行显示
-m 以MB形式进行显示
-s, --summarize 仅显示总容量,而不显示每个子目录的占用量
--exclude=PATTERN 显示时排除指定的文件或目录
--max-depth=N 仅显示指定目录层级的文件或目录大小

示例用法

1、显示当前下各目录的磁盘使用量

[root@localhost ~]# du -sh *
4.4G CentOS-6.6-x86_64-bin-DVD1.iso
3.7G CentOS-6.9-x86_64-bin-DVD1.iso
4.2G CentOS-7.5-x86_64-DVD-1804.iso
4.0K CentOS7-Base-163.repo
34M dbeaver-ce-5.1.2-x86_64-setup.exe
35M docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpm
16K epel-release-latest-7.noarch.rpm
163M jdk-8u181-linux-x64.rpm
218M Remmina
[root@localhost ~]# du -ch *.iso
4.4G CentOS-6.6-x86_64-bin-DVD1.iso
3.7G CentOS-6.9-x86_64-bin-DVD1.iso
4.2G CentOS-7.5-x86_64-DVD-1804.iso
# 使用-c选项在最后显示了总用量,相当于将三个ISO文件的使用量做了加法
13G 总用量

2、文件和文件夹是存在层级和嵌套关系的,如果我们只想显示指定层级的使用量信息,就需要使用选项--max-depth。这个选项在查找系统某个目录使用量比较大的时候,超级有用

[root@localhost ~]# du -h --max-depth=1 /
136M /boot
0 /dev
324M /run
0 /sys
52M /etc
48M /root
2.4G /var
988K /tmp
4.8G /usr
17G /home
0 /media
0 /mnt
0 /opt
101M /srv
25G /

3、默认情况下,du只显示目录的容量,而不显示单个文件大小,这个时候就需要用到-a选项

[root@localhost sysconfig]# du -h .
8.0K ./cbq
0 ./console
8.0K ./modules
268K ./network-scripts
532K .
[root@localhost sysconfig]# du -ah .
4.0K ./ip6tables-config
4.0K ./iptables-config
4.0K ./cbq/avpkt
4.0K ./cbq/cbq-0000.example

4、在使用-a选项后,会将隐藏文件也显示出来,而如果不想显示隐藏文件,需要作用--exclude

[root@localhost ~]# du -ah . | more
4.0K ./.bash_logout
4.0K ./.bash_profile
4.0K ./.bashrc
4.0K ./.cshrc
[root@localhost ~]# du -ah --exclude="*/.*" .
4.0K ./anaconda-ks.cfg
4.0K ./initial-setup-ks.cfg
4.0K ./keystonerc_demo

5、结合sort命令可对du输出信息进行排序

[root@localhost ~]# du -h --max-depth=1 / | sort -hr
25G /
17G /home
4.8G /usr
2.4G /var
324M /run
136M /boot
101M /srv
52M /etc
48M /root
988K /tmp
0 /sys
0 /proc
0 /opt
0 /mnt
0 /media
0 /dev

本文同步在微信订阅号上发布,如各位小伙伴们喜欢我的文章,也可以关注我的微信订阅号:woaitest,或扫描下面的二维码添加关注:

Linux 基础教程 40-df和du命令的更多相关文章

  1. linux查看空间情况----df与du命令

    1.查看整个磁盘空间使用情况,可以使用命令 :df   -h 2.获取当前的文件夹下的磁盘使用情况,可以使用如下命令:du --max-depth=1 -h 使用 du --max-depth=1 - ...

  2. Linux下查看文件和文件夹大小的df和du命令

        转自:http://www.yayu.org/look.php?id=162 当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择. df可以查看一级文件夹大小.使用比 ...

  3. 嵌入式LINUX基础教程 第2版

    嵌入式LINUX基础教程  第2版 目录 第1章 入门 11.1 为什么选择Linux 11.2 嵌入式Linux现状 21.3 开源和GPL 21.4 标准及相关组织 31.4.1 Linux标准基 ...

  4. df 和du 命令统计磁盘空间不准确

    Linux & Unix 中 df 和 du 命令统计磁盘空间数值不一致 经常会使用 df 和 du 分别查看磁盘空闲空间和占用空间,偶尔会发现 df(空闲空间) 会小于磁盘大小减去 du(占 ...

  5. linux系统df和du命令的区别

    发现一台用户的电脑,df检查出来的/磁盘空间占用了16G,比用du查看得到的磁盘空间大的多,du查看/下所有程序目录加起来还不到5G.这是什么原因呢? 即便是有隐藏文件,查了也很小啊.   因为df和 ...

  6. Linux 基础教程 44-history命令

    什么是history     在Linux系统日积月累的使用中,我们会输入很多命令.而在我们想重复上一个命令时,通过使用方向键向上翻就可以查看我们已经输入和使用过的命令.那大家有没有想过这个命令保存在 ...

  7. Linux 基础教程 43-su和sudo命令

        在使用Linux系统中,有时候还需要做身份切换,这是为什么? 使用普通账号:系统日常操作的好习惯   虽然使用root对系统进行各种操作不受权限等方面的限制,但却存在重大的安全隐患,假如有人不 ...

  8. Linux 基础教程 37-进程命令

    pidof     我们知道每个小孩一出生就会一个全国唯一的编号来对其进行标识,用于以后上学,办社保等,就是我们的身份证号.那么在Linux系统中,用来管理运行程序的标识叫做PID,就是大家熟知的进程 ...

  9. Linux基础教程

    Linux基础教程之<Linux就该这么学>之学习笔记第一篇... ========================= 一.Basic Linux Commands    基本的Linux ...

  10. df、du命令

     EXT3  最多只能支持32TB的文件系统和2TB的文件,实际只能容纳2TB的文件系统和16GB的文件 Ext3目前只支持32000个子目录 Ext3文件系统使用32位空间记录块数量和i-节点数量 ...

随机推荐

  1. ZedGraph右键菜单怎样禁止它弹出(转)

    private void ZGC_ContextMenuBuilder( ZedGraphControl sender,                     ContextMenuStrip me ...

  2. linux 线程的同步 三 (内存信号量的使用)

    信号量.同步这些名词在进程间通信时就已经说过,在这里它们的意思是相同的,只不过是同步的对象不同而已.但是下面介绍的信号量的接口是用于线程的信号量,注意不要跟用于进程间通信的信号量混淆,关于用于进程间通 ...

  3. TS流解析 三

    应该说真正了解TS,还是看了朋友推荐的<数字电视业务信息及其编码>一书之后,MPEG2 TS和数字电视是紧密不可分割的,值得总结一下其中的一些关系. ISO/IEC-13818-1:系统部 ...

  4. 【整理总结】目录 - 代码沉淀 - 常见Nuget包介绍及使用

    为了团队项目或者后期代码维护方便,现在项目已经极致推荐使用Nuget管理第三方类库了,所以下面列举的类库,都会在Nuget上获取到.目录排序不分先后,如果查找困难,请使用 ctrl + F 重要提示: ...

  5. yum安装cacti

    环境: centos 6.5 -x64 cacti-0.8.7e.tar.gz mysql yum安装即可 yum服务使用centos自带的就行.如果是红帽请自行解决yum.本文不赘述. **注意:同 ...

  6. OpenMP 旅行商问题,静态调度

    ▶ <并行程序设计导论>第六章中讨论了旅行商,分别使用了 MPI,Pthreads,OpenMP 来进行实现,这里是 OpenMP 的代码,分为静态调度(每个线程分分配等量的搜索人物)和动 ...

  7. bootstrap更新数据层

    mq推送数据,表格实时更新,发现销毁表格不太合适,整体表格闪动,于是选择更新数据层. 先初始化表格,然后在推送数据的时候先循环遍历数据 例如: initDevTable(data.operatingL ...

  8. Liunx cannot remove `xxx': Operation not permitted

    链接: http://mangocool.com/detail_1_1439515930283.html 解到原来文件还可以设置隐藏权限,就是这个chattr设置,下面我们来看看这个命令的详解. [r ...

  9. tomcat 域名直接访问默认工程,而不添加项目路径

    <Engine name="Catalina" defaultHost="xx.xx.xx.xx"> <!--For clustering, ...

  10. TFS自动签出解决方案sln或者项目文件csproj的解决办法

    问题: 最近公司一个项目组的源代码解决方案打开时总是出现解决方案或者部分项目被自动签出的情况,但签入又提示没有变更.事情虽 小,导致几个程序员要用项目文件时总是要找其他人签入.浪费不少时间.出现时间有 ...