Linux 基础教程 40-df和du命令
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命令的更多相关文章
- linux查看空间情况----df与du命令
1.查看整个磁盘空间使用情况,可以使用命令 :df -h 2.获取当前的文件夹下的磁盘使用情况,可以使用如下命令:du --max-depth=1 -h 使用 du --max-depth=1 - ...
- Linux下查看文件和文件夹大小的df和du命令
转自:http://www.yayu.org/look.php?id=162 当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择. df可以查看一级文件夹大小.使用比 ...
- 嵌入式LINUX基础教程 第2版
嵌入式LINUX基础教程 第2版 目录 第1章 入门 11.1 为什么选择Linux 11.2 嵌入式Linux现状 21.3 开源和GPL 21.4 标准及相关组织 31.4.1 Linux标准基 ...
- df 和du 命令统计磁盘空间不准确
Linux & Unix 中 df 和 du 命令统计磁盘空间数值不一致 经常会使用 df 和 du 分别查看磁盘空闲空间和占用空间,偶尔会发现 df(空闲空间) 会小于磁盘大小减去 du(占 ...
- linux系统df和du命令的区别
发现一台用户的电脑,df检查出来的/磁盘空间占用了16G,比用du查看得到的磁盘空间大的多,du查看/下所有程序目录加起来还不到5G.这是什么原因呢? 即便是有隐藏文件,查了也很小啊. 因为df和 ...
- Linux 基础教程 44-history命令
什么是history 在Linux系统日积月累的使用中,我们会输入很多命令.而在我们想重复上一个命令时,通过使用方向键向上翻就可以查看我们已经输入和使用过的命令.那大家有没有想过这个命令保存在 ...
- Linux 基础教程 43-su和sudo命令
在使用Linux系统中,有时候还需要做身份切换,这是为什么? 使用普通账号:系统日常操作的好习惯 虽然使用root对系统进行各种操作不受权限等方面的限制,但却存在重大的安全隐患,假如有人不 ...
- Linux 基础教程 37-进程命令
pidof 我们知道每个小孩一出生就会一个全国唯一的编号来对其进行标识,用于以后上学,办社保等,就是我们的身份证号.那么在Linux系统中,用来管理运行程序的标识叫做PID,就是大家熟知的进程 ...
- Linux基础教程
Linux基础教程之<Linux就该这么学>之学习笔记第一篇... ========================= 一.Basic Linux Commands 基本的Linux ...
- df、du命令
EXT3 最多只能支持32TB的文件系统和2TB的文件,实际只能容纳2TB的文件系统和16GB的文件 Ext3目前只支持32000个子目录 Ext3文件系统使用32位空间记录块数量和i-节点数量 ...
随机推荐
- GIT-查看config配置信息
config 配置指令 1 git config config 配置有system级别 global(用户级别) 和local(当前仓库)三个 设置先从system->global->lo ...
- redis3.0自带集群配置
参考 http://redis.readthedocs.org/en/latest/topic/cluster-tutorial.html http://yindashan.github.io/blo ...
- 【Codeforces】Codeforces Round #492 (Div. 2) (Contest 996)
题目 传送门:QWQ A:A - Hit the Lottery 分析: 大水题 模拟 代码: #include <bits/stdc++.h> using namespace std; ...
- Java中权限设置
package think_in_java_access_contorl; import think_in_java_access_contorl.access.Cookie; /** * 1.在Ja ...
- Cordova+Vue构建Hybrid APP简易实操
当下APP市场,因为Native APP开发成本高,Web APP不稳定,混合开发APP大行其道,成为越来越多开发者的首选.Hybrid APP开发框架也比较多,Weex.Ionic.PhoneGap ...
- __stdcall详解
对_stdcall 的理解(上) 在C语言中,假设我们有这样的一个函数:int function(int a,int b) 调用时只要用result = function(1,2)这样的方式就可以使用 ...
- python初步要点II
[python初步要点II] 1.is & is not 操作符用于测试2个对象是否指向同一个对象,即 id(a) == id(b). 2.整形和字符串对象是不可变对象,python会高效地缓 ...
- python大规模数据处理技巧之一:数据常用操作
面对读取上G的数据,python不能像做简单代码验证那样随意,必须考虑到相应的代码的实现形式将对效率的影响.如下所示,对pandas对象的行计数实现方式不同,运行的效率差别非常大.虽然时间看起来都微不 ...
- [Selenium]对于某些对话框即有可能弹出来,也有可能不弹出来,这种应该怎么处理呢?
界面上如果有一个对话框可能弹出来,也可能不弹出,我们都要认为是正常,应该怎么处理呢? /** * check if release notes dialog present * @author j * ...
- Linux中bash编程
bash编程也叫shell编程 预定义变量 $? 最后一次执行的命令的返回状态.如果这个变量的值为0,证明上一个命令正确的执行:如果这个变量返回的值非0(具体是那个数,有命令自己来决定 ...