一、概述

df命令是linux系统以磁盘为单位查看文件系统,可以利用该命令来获取某个硬盘已经被使用了多少空间,目前还剩下多少空间等信息。格式如下:df(参数) [文件]

其中参数-a或--all:包含全部的文件系统;

--block-size=:以指定的区块大小来显示区块数目;

-h或--human-readable:以可读性较高的方式来显示信息;

-H或--si:与-h参数相同,但在计算时是以1000 Bytes为换算单位而非1024 Bytes;

-i或--inodes:显示inode的信息;

-k或--kilobytes:指定区块大小为1024字节;

-l或--local:仅显示本地端的文件系统;

-m或--megabytes:指定区块大小为1048576字节;

--no-sync:在取得磁盘使用信息前,不要执行sync指令,此为预设值;

-P或--portability:使用POSIX的输出格式;

--sync:在取得磁盘使用信息前,先执行sync指令;

-t或--type=:仅显示指定文件系统类型的磁盘信息;

-T或--print-type:显示文件系统的类型;

-x或--exclude-type=:不要显示指定文件系统类型的磁盘信息;

--help:显示帮助;

--version:显示版本信息。

du命令(disk usage)也是查看空间使用情况的,但是与df命令不同的是,du命令是查看文件和目录使用的磁盘空间的大小。格式如下:du(参数) [文件]

其中参数:-a或-all 显示目录中个别文件的大小。

-b或-bytes 显示目录或文件大小时,以byte为单位。

-c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。

-k或--kilobytes 以KB(1024bytes)为单位输出。

-m或--megabytes 以MB为单位输出。

-s或--summarize 仅显示总计,只列出最后加总的值。

-h或--human-readable 以K,M,G为单位,提高信息的可读性。

-x或--one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。

-L或--dereference 显示选项中所指定符号链接的源文件大小。

-S或--separate-dirs 显示个别目录的大小时,并不含其子目录的大小。

-X或--exclude-from= 在指定目录或文件。

--exclude= 略过指定的目录或文件。

-D或--dereference-args 显示指定符号链接的源文件大小。

-H或--si 与-h参数相同,但是K,M,G是以1000为换算单位。

-l或--count-links 重复计算硬件链接的文件。

二、df命令与du命令的区别

du是面向文件的命令,只计算被文件占用的空间,而不计算文件的元信息(文件的创建者、文件的创建日期、文件的大小等),df则是基于文件系统总体来计算,通过文件系统中未分配空间来确定系统中已经分配空间的大小。df命令可以获取硬盘占用了多少空间,还剩下多少空间,它也可以显示所有文件系统对i节点和磁盘块的使用情况

三、使用

1.查看某个目录下文件的大小

可以使用如下命令du -sh *

java linux 获取磁盘的使用率不准 linux获取磁盘容量_文件大小

当然也可以查看指定的目录,如下du -sh  project  //查看project目录大小,仅显示总计

du -ah  project  //查看project目录大小,显示目录中所有文件大小

java linux 获取磁盘的使用率不准 linux获取磁盘容量_文件大小_02

1.查看某个目录下文件的大小

可以使用如下命令df -h

java linux 获取磁盘的使用率不准 linux获取磁盘容量_文件大小_03

图中各参数含义如下:

Size     : 磁盘的容量

Used     : 已使用的大小

Avail    : 剩下的大小

Capacity : 使用的百分比