上一篇
2025年8月最新动态:根据Linux基金会最新调查报告,find命令在服务器运维场景使用频率排名前三,95%的运维工程师表示每周至少使用10次以上,而令人意外的是,近40%的初级用户仅掌握基础文件名搜索功能。
在Linux系统里找文件就像在没整理的书房找一本笔记——如果只会用ls
和cd
,效率堪比摸黑找东西,而find
命令就是你的智能探照灯,它能:
find [搜索路径] [匹配条件] [执行动作]
举个栗子:
find /home -name "*.log" -size +10M -exec ls -lh {} \;
翻译:在/home目录下找所有.log结尾且大于10MB的文件,并显示详细信息
# 找所有后缀为.conf的配置文件 find /etc -name "*.conf" # 忽略大小写找README文件 find . -iname "readme*"
# 找出大于100MB的"大胖子"文件 find /var/log -size +100M # 查找小于1KB的空文件 find ~ -size -1k
# 7天内修改过的php文件 find /website -name "*.php" -mtime -7 # 找出30天前创建的备份文件 find /backups -type f -ctime +30
# 找所有符号链接 find /usr/bin -type l # 搜索/dev目录下的块设备 find /dev -type b
# 找全局可写的敏感文件 find / -perm -o=w -name "*.sh" # 检测SUID权限文件(黑客最爱) find /usr/bin -perm -4000
# 批量删除7天前的临时文件 find /tmp -type f -mtime +7 -exec rm {} \; # 给所有图片添加644权限 find /uploads -name "*.jpg" -exec chmod 644 {} \;
# 搜索时跳过.git目录 find . -path "./.git" -prune -o -name "*.py"
# 用10个线程压缩找到的日志 find /logs -name "*.log" | xargs -P 10 gzip
# 找出昨天下午2点到4点修改的文件 find /data -newermt "2025-08-14 14:00" ! -newermt "2025-08-14 16:00"
场景:服务器磁盘突然满了,快速定位大文件
# 按大小排序显示前10大文件 find / -type f -exec du -h {} + 2>/dev/null | sort -rh | head -10
输出示例:
12G /var/lib/mysql/data.ibd
8.4G /home/user/video.mp4
3.2G /var/log/app.log
-delete
参数,建议先用-exec ls {} \;
确认 2>/dev/null
过滤权限错误提示 -print
测试再执行操作 最后的小测验:
如果让你找出/data
目录下所有(1)属于nginx用户(2)修改时间在3天内(3)后缀为.conf
的文件,并备份到/backup
,你会怎么写命令?(答案见评论区)
掌握find命令后,你会发现自己再也不需要无意义地点击层层目录——这才是真正的Linux运维范儿!
本文由 母清润 于2025-08-02发表在【云服务器提供商】,文中图片由(母清润)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/514325.html
发表评论