Linux-shell篇之find用法

grep,egrep,fgrep:文本查找

文件查找:
locate:
非实时,查找是根据全系统文件数据库进行的
#updatedb,手动生成文件数据库
速度快

find
实时
精确
支持众多查找标准
遍历指定目录中的所有文件完成查找,速度慢

find 查找路径 查找标准 查找到以后的处理运作
查找路径:默认为当前目录
查找标准:默认为指定路径下的所有文件
处理运作:默认为显示

匹配标准:
-name ‘FILENAME’:对文件名作精确匹配
文件名通配:
*:任意长度的任意字符
?
[]
-iname ‘FILENAME’:文件名匹配时不区分大小写
-regex PARRERN:基于正则表达式进行文件名匹配

-user USERNAME:根据属主查找
-group GROUPNAME:根据属组查找

-uid UID:根据UID查找
-gid GID:根据GID查找

-nouser:查找没有属主文件
-nogroup:查找没有属组的文件

-type
f:普通文件
d:目录
c:字符设备
b:块设备
l:链接文件
p:管道设备
s:套接字设备

-size
[+|-]#k
#M
#G

组合条件:
-a:与
-o:或
-not;非

-mtime:修改时间(单位天)
-ctime:改变时间(单位天)
-atime:访问时间(单位天)
[+|-]#

-mmin:修改时间(单位分钟)
-cmin:改变时间(单位分钟)
-amin:访问时间(单位分钟)
[+|-]#
例子:
5分钟之内访问的文件,find ./ -amin -5
5分钟之前访问的文件,find ./ -amin +5

-perm MODE
/MODE
-MODE:文件权限能完全包含MODE时才能显示

-644
644:rw-r–r--
755:rwxr-xr-x
750:rwxr-x—

例子:
find ./ -perm -644
find ./ -perm -001,其他用户有可执行权限
find ./ -perm -022,组有写权限,同时其他用户也有写权限
find ./ -perm /022,组有写权限,或者其他用户也有写权限
find ./ -perm -007,其他用户有读写可执行权限

运作:
-print:显示
-ls:类似ls -l的形式显示每一个文件的详细
-ok:COMMAND {} ; 每一次操作都需要用户确认
-exec COMMAND {} ; 操作不需要用户确认

例子:
find ./ -perm -006 -exec chmod o-w {} ;
find ./ -type d -ok chmod +x {} ;
find ./ -perm -020 -exec mv {} {}.new ;
find ./ -name “*.sh” -a -perm -111 -exec chmod o-w {} ;

xargs用法
例子:find /etc -size +1M | xargs echo >> /tmp/etc/largefiles

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值