Linux系统文件查找技巧!适用飞牛OS/群辉/Unraid/Ubuntu
使用飞牛OS的相册功能,好奇相册缩略图缓存大小,和immich相比,文件大小占用
使用命令uname -a,确认系统是否适用本文章 ,Linux通用,建议收藏
飞牛os系统在 使用Linux 系统中,我们经常需要查找文件,例如:
查找某个配置文件(nginx.conf)
找到最近修改的日志文件
搜索特定类型的文件(如 .jpg 图片)
查找占用大量磁盘空间的文件
1. find 命令:实时查找文件(强大但可能较慢)
✅ 适用场景:
需要实时查找文件(不依赖索引)
搜索最近修改的文件
按大小、时间、权限等条件过滤文件
📌 基础用法
查找指定名称的文件:
find / -name "photo.db"
🔹 作用:从 /(根目录)开始搜索 photo.db 文件
模糊查找(不区分大小写):
find /home -iname "readme.txt"
🔹 作用:查找 home 目录下大小写不敏感的 readme.txt 文件(如 ReadMe.TXT 也能匹配)
查找最近 10 分钟修改的文件:
find /var/log -type f -mmin -10
🔹 作用:查找 /var/log 目录下最近 10 分钟被修改过的文件
查找大于 500MB 的文件:
find / -type f -size +500M
🔹 作用:搜索全系统大于 500MB 的文件
⚠ find 的缺点:
❌ 速度慢,因为 find 需要遍历整个磁盘
❌ 可能需要 sudo 权限,否则会因为权限问题跳过某些文件
🚀 find 提速优化
✅ 限制搜索范围(避免扫描整个 / 根目录):
find /home/user -name "*.txt"
✅ 限制递归深度(避免搜索太深的目录):
find /home -maxdepth 3 -name "*.log"
✅ 排除不相关目录(跳过系统目录提高速度):
find / -path "/proc" -prune -o -name "*.conf" -print
2. locate 命令:超快文件查找(基于索引)
✅ 适用场景:
需要快速查找文件
搜索已存在的文件
不适用于刚创建的文件(因为它依赖数据库索引)
✅ 如果 locate 未安装,先安装它:
sudo apt install mlocate
✅ 更新数据库,使其包含最新文件信息:
sudo updatedb
📌 基础用法
查找 photo.db 文件(比 find 快很多!)
locate photo.db
🔹 作用:快速返回 photo.db 文件的路径
查找 .log 日志文件:
locate "*.log"
🔹 作用:快速找到所有 .log 文件
忽略大小写搜索(匹配 ReadMe.TXT / README.txt):
locate -i "readme"
⚠ locate 的缺点
❌ 不能实时查找文件(需要更新数据库)
❌ 新创建的文件找不到,除非手动更新索引
3. fd 命令(比 find 更快!)
✅ 适用场景:
需要比 find 更快的搜索
更简洁的命令语法
可忽略 .gitignore 文件,适用于代码目录
✅ 安装 fd(比 find 快 5-10 倍!)
sudo apt install fd-find # Ubuntu/Debian
sudo yum install fd # CentOS/RHEL
brew install fd # macOS
📌 基础用法
查找 photo.db(语法比 find 简单):
fd "photo.db" /
查找所有 .log 文件:
fd ".log" /var/log
忽略大小写搜索:
fd -i "readme"
⚠ fd 的缺点
❌ 可能需要手动安装(大多数 Linux 发行版默认没有 fd)
❌ 无法按修改时间、文件大小等搜索(不如 find 灵活)
4. du 命令(查找占用空间大的文件)
✅ 适用场景:
需要查找占用磁盘空间最大的文件
清理无用的大文件
📌 基础用法
查找 /home 目录下最大的 10 个文件:
du -ah /home | sort -rh | head -10
🔹 作用:显示 /home 目录下占用空间最大的 10 个文件/目录
查找 /var/log 目录占用超过 100MB 的文件:
find /var/log -type f -size +100M
5. grep 结合 find(查找文件 + 关键词)
✅ 适用场景:
需要在找到的文件中搜索特定内容
📌 示例
查找 /var/log 目录中包含 "ERROR" 的日志文件
find /var/log -type f -name "*.log" | xargs grep "ERROR"
🔹 作用:先用 find 找到 .log 文件,再用 grep 查找包含 "ERROR" 关键词的文件
🚀 推荐使用场景
查找新创建的文件 ➜ find
快速查找已存在的文件 ➜ locate
比 find 更快的搜索 ➜ fd
查找大文件 ➜ du
查找文件内容 ➜ find + grep
掌握这些命令,你就能高效查找 Linux 文件,大幅提升工作效率!💡🚀
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

造作啊快活啊
校验提示文案
造作啊快活啊
校验提示文案