写点什么

linux 系列之: 你知道查看文件空间的两种方法吗?

发布于: 1 小时前
linux系列之: 你知道查看文件空间的两种方法吗?

简介

linux 系统中查看文件空间大小应该是一个非常常见的命令了,今天给大家介绍 linux 系统中查看文件空间的两种方法和在使用中可能会遇到的奇怪问题.

为什么会有两种方法呢? 因为我们可以使用 du 命令来看空间的占用情况,也可以使用 df 来查看空间的剩余情况,就像一个硬币的正反两面,怎么用着舒服怎么来.

话不多说,开始我们今天精彩的内容吧.

du 命令

查看空间大小最直接的命令就是 du 了, 这个命令的全称就是 disk usage. 表示的是磁盘空间的占用情况.

先看下 du 命令的基本语法:

du [-Aclnx] [-H | -L | -P] [-g | -h | -k | -m] [-a | -s | -d depth] [-B blocksize]        [-I mask] [-t threshold] [file ...]
复制代码

du 命令主要用来显示文件系统的使用情况,默认情况是显示当前目录的信息,当然也可以指定具体的目录.

du 的参数有很多,这里就不一一列举了,这里我们讲一下最常用的一些用法.

其中-h 表示是人类可识别的读法,所以我们一般都会带上-h.

比如查看当前目录的空间使用情况可以用:

# du -ah

复制代码

上面的命令显示的是目录中的所有文件.如果要将所有的文件都统计累加的话,那么可以用:

 # du -hs
复制代码

如果要指定特定的目录, 直接在后面加上目录名即可.

如果你又想查看目录中具体文件的大小,又想统计总的大小,那么可以使用:

 du -ch
复制代码

上面的命令会将总的大小添加在后面.

有时候我们可能发现目录占用的空间太大,但是我们又不知道具体是哪个目录,怎么办呢?

du 提供了一个–max-depth=1 的参数,可以指定统计目录的层级,大家可以根据需要进行调整,非常的方便.

df 命令

df 命令和 du 命令类似,但是他统计的是目录的剩余空间.

df 的命令如下:

df [-b | -h | -H | -k | -m | -g | -P] [-ailn] [-t] [-T type] [file | filesystem ...]
复制代码

那么 df 和 du 的统计是不是一致的呢?

大多数情况下是一样的,但是在某些情况两者的统计会出现较大的误差.

大家可能会有过这样的经历,就是一个很大的日志文件,还在源源不断的写入,如果这时候把这个日志文件删除了,会发生什么情况呢?

对于 du 来说是统计文件大小相加,而 df 是统计数据块使用情况.

在上面的例子中,虽然文件删除了,但是文件句柄并没有释放,所以 du 的数据显示文件已经删除了,但是 df 显示文件还在.直到这个打开大文件的进程被 Kill 掉。

可以通过下面的命令来查看文件的打开情况:

fuser -u
复制代码

总结

当然,还有最简单的 ls 命令,也可以简单的查看文件的大小.希望大家能够喜欢.

本文已收录于 http://www.flydean.com/02-du-and-df/

最通俗的解读,最深刻的干货,最简洁的教程,众多你不知道的小技巧等你来发现!

欢迎关注我的公众号:「程序那些事」,懂技术,更懂你!

发布于: 1 小时前阅读数: 4
用户头像

关注公众号:程序那些事,更多精彩等着你! 2020.06.07 加入

最通俗的解读,最深刻的干货,最简洁的教程,众多你不知道的小技巧,尽在公众号:程序那些事!

评论

发布
暂无评论
linux系列之: 你知道查看文件空间的两种方法吗?