操作系统是由一系列用于不同目的,服务不同人物的系统软件组成,随着Linux越来越流行,对Linux操作系统的一些基础的监控与操作越来越重要。

磁盘空间是一种非常有限的资源,我们经常要统计硬盘或者其他存储介质的情况,不知道你们有没有这样的经历,线上的机器跑着跑着,突然日志就打不下来了,或者想重新上传一个二进制包总是失败,一种非常可能的情况,就是因为磁盘空间已经爆满了。

在Linux系统中,磁盘管理有两个非常重要的命令,一个是df(disk free,了解了英文是不是更方便记忆),另一个是du(disk usage)。

df命令

如何监控linux文件删除 linux监控文件大小_如何监控linux文件删除


我们可以使用df来查看还有多少硬盘还有多少空间,如上图所示,我们注意到有多个不同的分区,blocks跟used分别表示被总数与被使用数,Availabel表示还有多少的空间可以使用。如果我们只是使用df,大小的单位有byte,不太直观,所以,我们可以增加-h参数,是的空间大小以最合适的单位进行展示。

du命令

我们都知道可以使用ll命令来查看文件的大小,但是使用ll命令的时候我们会发现一个问题,就是无法统计文件夹的大小,所有的文件夹在ll命令中都显示为4K。那么如何统计目录下所有文件的大小呢?


如何监控linux文件删除 linux监控文件大小_正则表达式_02


这就要使用到我们的du命令的。在同样的目录下执行du -h,我们发现,操作系统会去遍历所有的子目录,并统计他们的文件大小。

在Linux操作系统中,文件夹是没有记录整个文件的大小的,所以每次统计都需要进行遍历,如果目录非常的深,就可能非常的慢,一般我们只要获取一个大概的结果,可以使用--max-depth来设置文件的最深目录。

另外还有一些非常实用的命令,例如--exclude可以用来排除指定的文件或者满足指定正则表达式的文件。我们可以使用man du来获取到更多的du命令的使用方法!


总结

好了,今天我们介绍到这里。