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. Makefile中进行宏定义-***

    实际上是gcc命令支持-D宏定义,相当于C中的全局#define: gcc -D name gcc -D name=definition Makefile中可以定义变量(和宏很像),但是是给make解 ...

  2. VS工具相关内容

    1.VS自带的Visual Studio中的<C# 语言规范>安装路径:C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC#\Sp ...

  3. jsp页面的基本语法

    JSP全称Java Server Pages,顾名思义就是运行中java服务器中页面,也就是在我们JavaWeb中的动态页面,其本质就是一个Servlet. 学习jsp的基本语法主要就是学习服务器是如 ...

  4. RMAN非归档

    改变归档模式到非归档模式: 1)SQL>SHUTDOWN IMMEDIATE; 2)SQL>STARTUP MOUNT; 3)SQL>ALTER DATABASE NOARCHIVE ...

  5. 224. Basic Calculator + 227. Basic Calculator II

    ▶ 两个四则表达式运算的题目,第 770 题 Basic Calculator IV 带符号计算不会做 Orz,第 772 题 Basic Calculator III 要收费 Orz. ▶ 自己的全 ...

  6. java String标准格式转换Date(yyyy-MM-dd HH:mm:ss)

    SimpleDateFormat sdf=new SimpleDateFormat("yyy年MM月dd日hh点mm分"); Date date=new Date(); Strin ...

  7. centOs 安装NPM 记录

    1. 关闭npm严格认证 npm config set strict-ssl false

  8. eclipse报Access restriction: The type 'BASE64Decoder' is not API处理方法

    今天从svn更新代码之后,由于代码中使用了BASE64Encoder  更新之后报如下错误: Access restriction: The type ‘BASE64Decoder’ is not A ...

  9. less gradient-vertical 方法的实现

    // Vertical gradient using CSS where possible, and base64-encoded SVG for IE9 (enables use of this i ...

  10. css常用属性总结:关于word-spacing和letter-spacing的使用

    前端时间项目版本迭代,修改代码时发现使用了关于word-spacing和letter-spacing.先说下使用场景,以前的项目中,经常遇到某些字符间有一些间距,我看了一些同事的代码是这么实现的: & ...