命令行寻找Linux系统中的大文件

本文最后更新于:2024年4月6日 下午

命令行寻找Linux系统中的大文件

引言

在 Linux 的命令行中查找大文件的操作非常实用,本文介绍两种查找方法,分别是使用系统工具(适合没有 sudo 权限)和外部工具(适合有 sudo 权限可以方便安装)。

外部工具

使用ncdu快速检视文件路径及大小

先安装

1
2
sudo apt update
sudo apt install ncdu

使用直接在命令行输入ncdu

每次启动会进行检索,使用方向键或 jk 控制上下,q 退出

ncdu

系统自带工具

du查找当前文件夹下最大的文件或文件夹

1
du -ach --max-depth=1 . | sort -hr

如果文件比较多可以加一个筛选:

1
du -ach --max-depth=1 . | sort -hr | head -n10

其中-a表示计算所有文件,包括隐藏和子目录,因此通过--max-depth控制展示深度

find查找当前文件夹下最大的文件

寻找 20M 以上的文件并打印出来

1
find . -type f -size +20000k -exec ls -lh {} \; 2> /dev/null   | awk '{ print $NF ": " $5 }'  | sort -hrk 2,2

快捷实践

将复杂命令设置为 snippet,使用时快速调用,例如使用 Raycast,在 snippets 中增加一条:

在raycast中设置

然后再在终端中输入!find就会被自动替换为find . -type f -size +20000k -exec ls -lh {} \; 2> /dev/null | awk '{ print $NF ": " $5 }' | sort -hrk 2,2


命令行寻找Linux系统中的大文件
https://ash-one.github.io/2024/04/06/ming-ling-xing-xun-zhao-linux-xi-tong-zhong-de-da-wen-jian/
作者
灰一
发布于
2024年4月6日
许可协议