Linux中的find命令

find命令是Linux中强大的文件搜索命令,与which命令不同。which命令只找命令的路径,而find命令可以在整个目录树中根据文件名、类型、大小、时间、权限等任意条件搜索文件或目录

基本语法:

bash 复制代码
find [搜索起始路径] [匹配条件] [执行动作]
  • -name:表示按文件名搜索

1.按文件名查找

bash 复制代码
[root@master Java]# find / -name "test"
/usr/bin/test
/usr/lib/modules/3.10.0-1127.el7.x86_64/kernel/drivers/ntb/test
/usr/lib64/python2.7/test
/usr/lib64/python2.7/unittest

*字符:找以该字符结尾的文件名

bash 复制代码
[root@master Java]# find / -name "*test"
/sys/power/pm_test
/sys/module/8250/parameters/skip_txen_test
/sys/module/sr_mod/parameters/xa_test
/usr/bin/test
/usr/bin/grub2-fstest
/usr/sbin/eapol_test
/usr/lib/modules/3.10.0-1127.el7.x86_64/kernel/drivers/ntb/test
/usr/lib64/nss/unsupported-tools/bltest
/usr/lib64/nss/unsupported-tools/fipstest
/usr/lib64/python2.7/test
/usr/lib64/python2.7/unittest
/usr/lib64/python2.7/unittest/test
/usr/libexec/openssh/ctr-cavstest
/usr/java/latest
/media/cdrom/isolinux/memtest
[root@master Java]# 

在Java目录下新建一个空白文件:test.txt

bash 复制代码
[root@master Java]# touch test.txt
[root@master Java]# ls
BinarySearch.class  BinarySearch.java  test.txt
bash 复制代码
[root@master Java]# find / -name "test.txt" # 从根目录下开始找文件名为"test.txt"的文件
/Projects/Java/test.txt

2.可以按文件类型查找:

bash 复制代码
find / -type f      # 普通文件
find / -type d      # 目录
find / -type l      # 软链接
find / -type s      # 套接字文件

3.按文件大小查找

bash 复制代码
find /tmp -size +100M      # 大于 100MB
find /tmp -size -1k        # 小于 1KB
find /tmp -size 50M        # 精确 50MB
# 单位:c(字节)、k、M、G
特性 which find
搜索对象 仅可执行命令 任意文件/目录
搜索范围 $PATH 目录 任意指定路径
搜索条件 仅文件名 数十种条件
是否递归
额外操作 删除、执行、改权限等

简单记忆:which 找"命令",find 找"文件" 。当需要灵活搜索文件时,find 几乎是万能的。

相关推荐
维天说3 分钟前
CLI-Switch 2026年3月版历史设计:Hook、TTY 隔离与 JSON 状态
java·服务器·json
Zhang~Ling15 分钟前
从 fopen 到 struct file:从零开始拆解 Linux 文件 I/O
linux·运维·服务器
DeeplyMind20 分钟前
Linux 深入 per-VMA lock:Linux 缺页路径如何摆脱 mmap_lock
linux·per-vma lock
爱写代码的阿森23 分钟前
鸿蒙三方库 | harmony-utils之PreferencesUtil首选项数据监听详解
服务器·华为·harmonyos·鸿蒙·huawei
爱写代码的森30 分钟前
蒙三方库 | harmony-utils之FileUtil文件重命名与属性查询详解
linux·运维·服务器·华为·harmonyos·鸿蒙·huawei
中微极客1 小时前
2026主流AI Agent框架技术选型与性能对比
运维·网络·人工智能
吠品2 小时前
Zabbix Web界面误报Server未运行的排查与解决
java·服务器·数据库
XMAIPC_Robot2 小时前
软硬协同实时控制|RK3588业务调度+FPGA硬件时序,ethercat实现半导体设备微秒级响应(125us)
linux·arm开发·人工智能·fpga开发
AOwhisky2 小时前
Python 学习笔记(第十五期)——运维自动化(下·后篇):堡垒机实战——paramiko高阶篇
运维·python·学习·云原生·自动化·运维开发
重生的黑客2 小时前
Linux 进程优先级、切换与调度:从孤儿进程到 O(1) 调度模型
linux·运维·服务器·进程优先级·nice