- 时间:2021-01-05 23:41 编辑: 来源: 阅读:
- 扫一扫,手机访问
摘要:linux 查找大目录和大文件的方法(推荐)
今天,在机器上执行命令的时候,发现tab键无法补全了,原因竟然是磁盘空间满了,使用df命令看了一下,确实如此,每个分区的使用率都得到100%了,因此想找到系统中的大目录和大文件,删除一部分。
[b]主要涉及到两个命令 du和find[/b]
[b]du命令(查找系统中的大目录):[/b]
-h已易读的格式显示指定目录或文件的大小
-s选项指定对于目录不详细显示每个子目录或文件的大小
[b]-m或–megabytes 以1MB为单位[/b]
–max-depth=1:其中,数字“1”是指查询结果中最多显示的目录层数,这里指最多显示一层目录。
首先使用df命令,查看各挂载点磁盘空间的使用情况,然后从使用率接近100%的目录下,查看其各个子目录的大小情况
[b]du -sm * 2> /dev/null | sort -nr | head -5[/b]
可以使用sort对du输出的结果进行一个排序(如果du使用h参数,可能得不到正确的排序结果)
以上方法只是对目录大小进行判定,所以当确定某目录过大时,最好是cd到该目录,查看下有无大文件,然后再确定是否进入下一层目录。
[b]find命令(查找系统中的大文件)[/b]
获取某个目录下大于800M的所有文件
[b]find . -type f -size +800M[/b]
如上命令所示,我们仅仅能看到超过800M大小的文件的文件名称,但是对文件的信息(例如,文件大小、文件属性)一无所知,那么能否更详细显示一些文件属性或信息呢,当然可以,使用如下命令:
find . -type f -size +800M -print0 | xargs -0 ls -l
当找到大文件后,若因某些原因,不想对文件进行删除,可以用echo或cat或clear命令清除文件内容
[b]echo > a.log[/b]
[b]clear > a.log[/b]
以上这篇linux 查找大目录和大文件的方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程素材网。