广告

Linux系统中查找大文件的方法有哪些

2023-12-11

一、ls命令
最简单的方法就是借助 ls 命令,因为 ls 命令本身输出是带文件大小信息的。

比如,我要列出 /opt 目录中的 5 个最大文件,可以:

1.ls -lSh /opt | head -5

列出 /opt 目录中的 5 个最大文件


二、find命令
find 本身就是查找命令,可以递归查找一个目录的子目录,所以用它是自然的。

比如,查找 / 目录下最大的一个文件:

1. sudo find / -type f -printf “%st%pn” | sort -n | tail -1

如果要找前 10 个大文件呢,可以这样:

2. $ find $HOME -type f -printf ‘%s %pn’ | sort -nr | head -10

也可以使用 -size 选项来查找,以下命令将显示大于100MiB(注意不是100MB,MiB和MB的区别,emmm)的所有文件:

3. find / -size 100M-ls

也可以查找一个区间大小的(比如 100MiB 和 200MiB )之间的文件:

4. find / -size 100M-size -200M-ls

最后,下面这个命令也比较常用,查找某个目录最大的5个文件:

5. find $DIRECTORY -type f -exec ls -s {} ; | sort -n | tail -n 5

补充一点,find 也可以查找最近的文件:少于或等于n天(-ctime -n)的文件或属于特定用户(-user mrlinus)的文件。

三、du命令
du 命令可以查看磁盘空间的使用情况,自然也可以用来查看磁盘上占用空间较多的文件和文件夹。

比如,查找 / 下前 20 个最大的文件:

6.sudo du -a / | sort -n -r | head -n 20

查找 / 下前 20 个最大的文件

查找当前文件夹中最大的 10 个目录:

7.sudo du -a | sort -n -r | head -n 10

如果要显示可读的KB、MB、GB信息,可以加上 -h 参数:

8.du -hs * | sort -rh | head -n 10

查找最大目录/文件(包括子文件夹):

9.du -Sh| sort -rh | head -n 10

如果只看大小在 GB 范围内的所有文件,可以同时使用 du 命令和 grep 命令

如果只看大小在 GB 范围内的所有文件,可以同时使用 du 命令和 grep 命令:

10.du -h -a /dir | grep “[0-9]Gb”

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。本站原创内容未经允许不得转载,或转载时需注明出处!

上一篇:Linux系统中重复执行历史命令的方法

下一篇:Linux中通过expect工具实现脚本的自动交互

这条帮助是否解决了您的问题?已解决未解决

提交成功!非常感谢您的反馈,我们会继续努力做到更好!很抱歉未能解决您的疑问。我们已收到您的反馈意见,同时会及时作出反馈处理!

立即注册91VPS账号,免费体验多款产品
立即注册
联系我们
全国咨询热线:
0712-5319406
QQ客服:
800193021
91VPS微信客服

扫码联系微信客服