您当前的位置:首页 > 电脑百科 > 软件技术 > 操作系统 > linux

如何在 Linux 命令行中查找最大的文件或文件夹

时间:2023-03-21 11:15:20  来源:TIAP  作者:
在当前目录中查找前10个最大的文件和文件夹,接下来我们详细介绍一下。

工作中经常会有查看某个目录下最大的文件的需求。比如在运维工作中,发现某个系统或功能不工作了,经排查发现是服务器空间满了...那么接下来就需要清理一下临时文件或者日志文件,或者其他不需要的文件,那么就会想要查看一下,在某个目录下,到底哪个文件占用空间最大,也就是需要找出最大的文件(或目录)来。

一般来说,可以使用 du,sort 和 head 命令来完成这个工作。比如,在当前目录下查找前10个最大的文件夹,可参考如下命令:

du -h | sort -hr | head -n 10

再比如,在当前目录中查找前10个最大的文件和文件夹,参考如下命令:

du -ah | sort -hr | head -n 10

接下来我们详细介绍一下。

如何在 linux 中找出最大的文件夹

du 命令用于获取磁盘使用情况,sort 命令用于根据需求对数据进行排序,head 命令用于显示输入数据的前面部分。

这只是在 Linux 命令行中获取最大文件和目录的一个命令组合,除此以外,也还有其他一些方法来实现相同的效果。

首先,假如在没有任何选项的情况下,使用这三个命令会发生什么呢?其输出对你来说可能没有什么实际用处。

当开始运行这些命令的时候,除非使用 du  指定,否则所有操作都是针对当前目录。

不带选项的使用 sort 命令,其结果往往会出人意料,比如,100 会被认为小于 12,因为它是按照各个数位上的字符排序的,第一位都是1,100的第二位为0,12的第二位为2,而2>0,所以12会排在100前面。

head 命令默认会显示前 10 个条目,根据你想要分析的目录,可修改其执行参数。

如下所示为不带任何选项的运行示例:​

$ du | sort | head
100    ./.local/share/evolution/addressbook
108    ./.mozilla/firefox/jwqwiz97.default-release/datareporting
112    ./.local/share/gvfs-metadata
12    ./.cache/fontconfig
12    ./.cache/gnome-software/screenshots/112x63
12    ./.cache/thumbnails/fail
12    ./.config/dconf
12    ./.config/evolution
12    ./.config/gnome-control-center/backgrounds
12    ./.config/ibus

回到正题,下面我们看看如何使用合适的选项来达到我们的目的(找到最大的文件)。

sort 命令中,-n 选项表示将字段按照数值进行排序,-r 选项表示倒序排序,这通常是我们在使用 sort 命令时所希望的。

另外,在 head 中添加 -5 选项,表示查找前 5 个条目(而不是默认的10个),这根据你的具体需求和期望来决定。

然后,重新运行如下:​

$ du | sort -nr | head -5
1865396    .
1769532    ./Documents
76552    ./.cache
64852    ./.cache/mozilla
64848    ./.cache/mozilla/firefox

这个结果看起来好多了,哪个文件夹最大,一目了然。

du 命令的 -h 选项,可以让列表中文件大小以人类易读的方式显示,如下所示:​

$ du -h | sort -nr | head -5
980K    ./.local/share/App-info
976K    ./.local/share/app-info/xmls
824K    ./.cache/thumbnails
808K    ./.cache/thumbnails/large
804K    ./.local/share/tracker

另外,sort 命令也有 -h 选项如下所示:

$ du -h | sort -hr | head -5
1.8G    .
1.7G    ./Documents
75M    ./.cache
64M    ./.cache/mozilla/firefox/jwqwiz97.default-release
64M    ./.cache/mozilla/firefox

找到最大的文件

从上述命令的输出结果中,我们可以判断出 Documents 文件夹中包含了一些较大的文件。但是我们切换到 Documents 文件夹中,再次运行上述命令,却看不到最大的文件,如下所示:​

$ du -h | sort -hr | head -5
1.7G    .

这个结果表示,当前目录下 . 目录中含有1.7G的文件,但是对于我们找到最大的单个文件,却是没有帮助的。

这需要我们在 du 命令中使用另外一个选项,-a,如下所示:​

$ du -ah | sort -hr | head -5
1.7G    .
1.1G    ./1gig-file.file
699M    ./doc.tar
2.9M    ./photo-of-woman-wearing-turtleneck-top-2777898.jpg
1.4M    ./semi-opened-laptop-computer-turned-on-on-table-2047905.jpg


Tags:Linux   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
在当前目录中查找前10个最大的文件和文件夹,接下来我们详细介绍一下。工作中经常会有查看某个目录下最大的文件的需求。比如在运维工作中,发现某个系统或功能不工作了,经排查发...【详细内容】
2023-03-21  Tags: Linux  点击:(0)  评论:(0)  加入收藏
在 Linux 服务器中,可以通过内核调优、DPDK 以及 XDP 等多种方式提高服务器的抗攻击能力,降低 DDoS 对正常服务的影响。在应用程序中,可以使用各级缓存、WAF、CDN 等来缓解 DDo...【详细内容】
2023-03-20  Tags: Linux  点击:(5)  评论:(0)  加入收藏
​本文涉及到一些你绝不能在你的 Linux 系统上运行的命令,因为它们可能对你的 Linux 系统造成致命的影响。因此,在我继续之前,我想指出,本文仅供信息参考,让读者知道要避免执行以...【详细内容】
2023-03-20  Tags: Linux  点击:(5)  评论:(0)  加入收藏
众所周知,NGINX 是一个广受好评的 web 服务器,也可以用作反向代理,负载均衡器和 HTTP 缓存。keepalive 工作在虚拟路由器冗余协议 vrrp (Virtual Router Redundancy Protocol)...【详细内容】
2023-03-17  Tags: Linux  点击:(14)  评论:(0)  加入收藏
如果一个目录中文件数不是很多,那就可以一眼看出其中有多少个文件。但是如果计算子目录在内的文件数呢?或者如果文件数量很多,比如几百上千个,那么怎么确切地知道该目录下的文件...【详细内容】
2023-03-16  Tags: Linux  点击:(13)  评论:(0)  加入收藏
有许多适合新手的 Linux 版本,但 Linux Mint 特别适合已经熟悉 Microsoft Windows 的人。Linux 是一个根本不同的操作系统,但 Linux Mint 通过保持尽可能多的相似体验,减少了您...【详细内容】
2023-03-16  Tags: Linux  点击:(16)  评论:(0)  加入收藏
如果你是 Linux 爱好者,应该听说过 Linux 中的包依赖项并很想知道它们究竟是什么。依赖关系可能看起来很混乱,但是 Linux 中有一些工具可以确保您安装的每个程序都具有它需要...【详细内容】
2023-03-14  Tags: Linux  点击:(26)  评论:(0)  加入收藏
云计算极大地改变了服务器应用场景,许多平台都提供免费的 Linux 云服务器,你可以在几分钟内通过这些平台部署一台 Linux 服务器。不过,作为云服务器,也有弊端。因为它是在互联网...【详细内容】
2023-03-08  Tags: Linux  点击:(19)  评论:(0)  加入收藏
​Linux 终端是一个功能强大的工具,允许您使用命令执行各种系统操作。文件操作、程序管理和服务自动化是您可以使用 shell 命令高效执行的一些操作。​但是,在执行多个操作时,...【详细内容】
2023-03-07  Tags: Linux  点击:(19)  评论:(0)  加入收藏
在linux中,当占用过高的内存或者cpu时,会常常伴随着我们的服务处理变慢或者无响应,这个时候我们需要排查服务器中哪些进程占用过高导致的。或者有时候我们在测试我们的网站时,我...【详细内容】
2023-03-06  Tags: Linux  点击:(26)  评论:(0)  加入收藏
▌简易百科推荐
在当前目录中查找前10个最大的文件和文件夹,接下来我们详细介绍一下。工作中经常会有查看某个目录下最大的文件的需求。比如在运维工作中,发现某个系统或功能不工作了,经排查发...【详细内容】
2023-03-21    TIAP  Tags:Linux   点击:(0)  评论:(0)  加入收藏
在 Linux 服务器中,可以通过内核调优、DPDK 以及 XDP 等多种方式提高服务器的抗攻击能力,降低 DDoS 对正常服务的影响。在应用程序中,可以使用各级缓存、WAF、CDN 等来缓解 DDo...【详细内容】
2023-03-20  Linux码农  今日头条  Tags:Linux   点击:(5)  评论:(0)  加入收藏
​本文涉及到一些你绝不能在你的 Linux 系统上运行的命令,因为它们可能对你的 Linux 系统造成致命的影响。因此,在我继续之前,我想指出,本文仅供信息参考,让读者知道要避免执行以...【详细内容】
2023-03-20  Linux迷    Tags:Linux   点击:(5)  评论:(0)  加入收藏
如果一个目录中文件数不是很多,那就可以一眼看出其中有多少个文件。但是如果计算子目录在内的文件数呢?或者如果文件数量很多,比如几百上千个,那么怎么确切地知道该目录下的文件...【详细内容】
2023-03-16    TIAP  Tags:Linux   点击:(13)  评论:(0)  加入收藏
有许多适合新手的 Linux 版本,但 Linux Mint 特别适合已经熟悉 Microsoft Windows 的人。Linux 是一个根本不同的操作系统,但 Linux Mint 通过保持尽可能多的相似体验,减少了您...【详细内容】
2023-03-16  Linux迷    Tags:Linux   点击:(16)  评论:(0)  加入收藏
如果你是 Linux 爱好者,应该听说过 Linux 中的包依赖项并很想知道它们究竟是什么。依赖关系可能看起来很混乱,但是 Linux 中有一些工具可以确保您安装的每个程序都具有它需要...【详细内容】
2023-03-14    Linux迷  Tags: Linux   点击:(26)  评论:(0)  加入收藏
云计算极大地改变了服务器应用场景,许多平台都提供免费的 Linux 云服务器,你可以在几分钟内通过这些平台部署一台 Linux 服务器。不过,作为云服务器,也有弊端。因为它是在互联网...【详细内容】
2023-03-08   TIAP  微信公众号  Tags:Linux   点击:(19)  评论:(0)  加入收藏
​Linux 终端是一个功能强大的工具,允许您使用命令执行各种系统操作。文件操作、程序管理和服务自动化是您可以使用 shell 命令高效执行的一些操作。​但是,在执行多个操作时,...【详细内容】
2023-03-07  Linux迷  微信公众号  Tags: Linux   点击:(19)  评论:(0)  加入收藏
在linux中,当占用过高的内存或者cpu时,会常常伴随着我们的服务处理变慢或者无响应,这个时候我们需要排查服务器中哪些进程占用过高导致的。或者有时候我们在测试我们的网站时,我...【详细内容】
2023-03-06  Linux码农  微信公众号  Tags: Linux   点击:(26)  评论:(0)  加入收藏
我们点评了 2023 年最好的 Arch Linux 发行版,并探讨了它们的关键亮点,以便在你为工作流程选择它们之前加以考虑。 如果你是一个寻找强大而灵活的操作系统的 Linux 爱好者,那...【详细内容】
2023-03-06     Linux中国  Tags:Linux   点击:(31)  评论:(0)  加入收藏
站内最新
站内热门
站内头条