Linux命令基础find

本文详细介绍Linux下使用locate和find命令进行高效文件搜索的方法。包括如何通过文件名、属主、属组、文件类型、大小、修改时间等标准进行精确或模糊查找,以及如何利用查找后的处理动作实现自动化文件管理。

查找文件的方法

locate

locate 模糊匹配,非实时查找,是根据全系统文件数据库进行的,执行updatedb命令,手动生成文件数据库
例如 locate ifconfig
Linux命令基础find

find

find 实时,精确查找,查找速度慢

find 查找的路径 查找的标准 查找后的处理的动作

查找的路径,默认是当前路径
查找的标准,默认是指定路劲下的所有文件
查找后的处理的动作,默认显示
Linux命令基础find

查找的标准

-name "filename" 根据文件名称,单 引号,双引号,不加引号
-iname filename 文件名称不区分大小写
-user username 根据属主
Linux命令基础find
-group groupuser
-nouser 查找没有属主的文件
-nogroup 查找没有属组的文件
-uid 505
-gid 505
用户删除后,文件原来属主,属组属于该用户的,此时显示id号
Linux命令基础find


-type
d
f
s
c
b
p
l


-size
K(KB)
G(GB)
M(MB)


-mtime
5
+5
-5


-atime
-ctime
-mmin
-amin
-cmin


-perm
mode 按权限查找,精确匹配
/mode 权限位有任何一位匹配
-mode 文件权限能完全包此mode时显示
(1)、644:rw-r--r--
(2)、755:rwxr-xr-x
(3)、750:rwxr-x---
(2)包含(1),(3)mode

如找到当前文件夹属组有写权限的文件
find ./ -mode -020(只要属组有写权限的文件都能包含 ----r----即-020)


查找后的处理动作

-print 默认
-ls 类似ls -l
Linux命令基础find

-ok
-exce
给当前文件夹里的所有以.sh结尾的文件添加可执行权限
find ./ -name "*.sh" -exec chmod +x {} \;
可以把 -exec换为 -ok ,区别是-ok需要手动一个一个的确认

Linux命令基础find
给当前文件夹里的所有以.sh结尾的文件添加后缀名-bak
Linux命令基础find

使用-exec 或 -ok ,命令结尾的 \ ; 不能省略

转载于:https://blog.51cto.com/11193863/2321585

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值