linux find文件查找

本文详细解读了Linuxfind命令的各个参数,如文件名匹配、文件属性(大小、时间、类型、权限)、执行动作以及-exec和xargs的区别,提供实例帮助理解如何在实际操作中高效使用find命令进行文件搜索和管理。
摘要由CSDN通过智能技术生成

find详解: 文件查找

find:文件查找针对文件名

文件名
find /etc/ -name passwd 在ETC下查找叫Passwd的文件
-name 文件名
-iname 忽略大小写 -i
[root@qfedu.com ~]# find /etc -iname "*.txt"
参数解释:
*:表示所有字符
文件属主和属组
find /home -user jack   //属主
find /home -group hr   //属组是hr组的文件

文件大小
find /etc/ -size +5M  查找ETC下大于M的文件
-size +/-  大小    
-size -5M 取等于5的文件
-size +4M -a -size -5M 取大于4小于5的文件
-size +4M -o -size -5M 取大于4或者小于5的文件
-a 与    -o 或者
 find / -size -3M -a -name "*.txt" #查找/ 下面小于3M而且名字是.txt的文件
文件时间
find /opt/ -mtime|-mmin +10 查找大于十天|分钟文件
-mtime 天    -mmin 分
atime访问时间   ctime最后一次改变文件或目录(改变的是原数据即:属性)的时间    
mtime文件最近一次被修改时间
文件类型
find /etc -type 【f|d|b|l】
-type 软链接   
f 普通文件
d 目录
l 链接
b 块设备
文件权限
find /etc -perm 666 查找ETC下权限为666的文件
-perm 权限
找到后处理的动作 ACTIONS
[root@qfedu.com ~]# find /etc -name "ifcfg*" -exec cp -rf {} /tmp \; #exec命令对之前查找出来的文件做进一步操作-----  查找带ifcfg开头的文件复制到tmp下
[root@qfedu.com ~]# touch /home/test{1..20}.txt
[root@qfedu.com ~]# find /home/ -name test* -exec rm -rf {} \; #{}为前面查找到的内容,\; 格式
find使用xargs
[root@qfedu.com ~]# touch /home/test{1..20}.txt
[root@qfedu.com ~]# # find /home/ -name "test*" | xargs -i cp {} /tmp/ #找到之后删除处理xargs 参数传递

-maxdepth (指定查找深度)

查找文件深度 | 目录深度
实例:
find / -maxdepth 1 -name  dev
/dev
[root@localhost /]# find / -maxdepth 2 -name  dev
/dev
/sys/dev
[root@localhost /]# find / -maxdepth 3 -name  dev
/dev
/proc/sys/dev
/sys/dev

-exec和xargs的区别
-exec:参数是一个一个传递的,传递一个参数执行一次命令。
xargs:将前一个命令的标准输出传递给下一个命令,作为它的参数转换成下一个命令的参数列表。
===============
1、exec 每处理一个文件或者目录,它都需要启动一次命令,效率不好; 
2、exec 格式麻烦,必须用 {} 做文件的代位符,必须用 \来转义; 作为命令的结束符,书写不便。 
3、xargs不能操作文件名有空格的文件;
xargs -i {} 
综上,如果要使用的命令支持一次处理多个文件,并且也知道这些文件里没有带空格的文件,那么使用 xargs比较方便; 否则,就要用 exec了。
案例1: 分别找出test5 和除了test5的文件
[root@qfedu.com ~]# find /home/ -name *test5*
[root@qfedu.com ~]# find /home/ ! -name "test5*" # !--取反

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值