Linux基础命令find

一、基础搜索选项

​**-name “pattern”**
​功能:按文件名精确匹配(区分大小写),支持通配符(、?、[])
​示例:
bash
find ~ -name "
.txt" -print # 在$HOME目录查找所有.txt文件2,3,4,5,6
​**-iname “pattern”**
​功能:按文件名模糊匹配(忽略大小写)
​示例:
bash
find . -iname “.log" -print # 区分大小写查找.log文件3,4
​**-type {f,d,l}**
​功能:按文件类型过滤
f:普通文件
d:目录
l:符号链接
​示例:
bash
find /etc -type f -name "host
” # 查找/etc下所有host开头的普通文件2,3,4,5,6

​二、属性过滤选项

​**-perm mode**
​功能:按文件权限匹配(八进制表示法)
mode:精确匹配权限
-mode:权限包含mode
+mode:权限包含mode的任意组合
​示例:
bash
find . -perm 644 -print # 查找权限为644的文件2,3,4,5,6
​**-user username**
​功能:按文件属主过滤
​示例:
bash
find /home -user alice -print # 查找alice用户的文件2,3,4,5,6
​**-group groupname**
​功能:按文件所属组过滤
​示例:
bash
find /var/log -group root -print # 查找root组的文件2,3,4,5,6
​**-mtime -n +n**
​功能:按文件修改时间过滤
-n:n天内修改
+n:n天前修改
​示例:
bash
find . -mtime +7 -name “*.log” # 查找7天前修改的.log文件2,3,4,5,6

​三、文件特征过滤

​**-size n[c]**
​功能:按文件大小过滤
n:精确大小(c表示字节,k表示KB,M表示MB)
-n:小于n
+n:大于n
​示例:
bash
find /var -size +100M -print # 查找大于100MB的文件3,4,6
​**-newer file1 ! file2**
​功能:查找修改时间介于file1和file2之间的文件
​示例:
bash
find . -newer file1 ! -newer file2 -print # 查找修改时间在file1之后、file2之前的文件2,5

​四、操作与控制选项

​**-exec command {} ;**
​功能:对匹配文件执行命令({}会被替换为文件路径)
​示例:
bash
find . -name “.log" -exec rm {} ; # 删除所有.log文件2,3,4,5,6
​**-ok command {} ;**
​功能:与-exec类似,但执行前需用户确认
​示例:
bash
find . -name "
.tmp” -ok rm {} ; # 安全删除.tmp文件2,3,4,5,6
​**-delete**
​功能:直接删除匹配文件
​示例:
bash
find . -name “*.bak” -delete # 删除所有.bak文件4

​五、高级搜索选项

​**-prune**
​功能:忽略指定目录(常与-path结合使用)
​示例:
bash
find /var -path “/var/log” -prune -o -type f -print # 忽略/var/log目录2,5
​**-depth**
​功能:先查找当前目录文件,再递归子目录
​示例:
bash
find . -depth -name “.txt" -print # 先匹配当前目录的.txt文件2,5
​**-mount**
​功能:不跨越文件系统挂载点
​示例:
bash
find / -mount -name "
.conf” -print # 仅在当前文件系统查找.conf文件2,5

​六、复合条件查询

​逻辑运算符
-a(与)、-o(或)、!(非)
​示例:
bash
find . $ -name “.txt" -o -name ".log” $ -size +1M -exec rm {} ; # 删除.txt或.log且大于1M的文件3,4,6
​正则表达式匹配
​**-regex “pattern”**:匹配完整路径的正则表达式
​示例:
bash
find . -regex “.*.pyc$” -delete # 删除所有.pyc文件4

​七、引用说明

基础选项与示例:
高级用法与安全注意事项:
完整手册可通过 man find 查看。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值