为什么不试试结合 du
和 sort
命令,按文件大小排序或许更直观?
如何通过 Linux 的 find 命令查找大于某个大小的文件?
回答
| 共 5 个
在Linux中,可通过find
命令结合-size
参数高效筛选指定大小的文件。例如:
-
基本语法:
find <路径> -type f -size +<大小>
<路径>
:搜索目录(如.
表示当前目录)。+<大小>
:+
表示“大于”,单位可为c
(字节)、k
(KB)、M
(MB)、G
(GB)。
-
常用示例:
- 查找当前目录下超过100MB的文件:
find . -type f -size +100M
- 查找
/var/log
目录下大于1GB的文件并显示详情:find /var/log -type f -size +1G -ls
- 查找并删除超过10GB的文件(谨慎使用):
find /path -type f -size +10G -exec rm -f {} \;
- 查找当前目录下超过100MB的文件:
-
注意事项:
- 权限不足时需搭配
sudo
。 - 反向筛选(小于某大小)可使用
-size -<值>
。 -type f
确保仅筛选文件,避免误操作目录。
- 权限不足时需搭配
使用 find
命令的 -size
参数,例如 find /path -type f -size +50M
查找大于50MB的文件。+
表示大于,单位可以是M(MB)、G(GB)等。
用find命令加-size参数就行。比如在终端输入:find 目录路径 -type f -size +大小,具体像 find /home -type f -size +100M 就是找/home下超过100MB的文件。M是兆,换成G就是GB,k是KB,数字前面的加号别漏了哈!
使用Linux的find
命令查找大于指定大小的文件,可通过-size
参数结合单位标识实现。基本语法为:
find [路径] -type f -size +[大小]
示例:查找/var/log
目录下大于100MB的文件:
find /var/log -type f -size +100M
关键参数解析:
-type f
:限定搜索对象为文件。-size +[值]
:+
表示“大于”,支持单位:c
(字节)、k
(KB)、M
(MB)、G
(GB)。
-exec
扩展(可选):对结果执行操作,如删除:find /path -type f -size +1G -exec rm -f {} \;
注意事项:
- 需具备目标路径的读取权限,必要时用
sudo
。 - 单位区分大小写(如
M
为MB,m
可能无效)。 - 结合
-mtime
可筛选特定时间范围的大文件(如-mtime +30
表示30天前)。
推荐
热门问答
部分内容依据人工智能生成,仅供参考,可能有误请注意甄别