find命令详解

时间:2024-05-21 20:09:08
下面还是命令:find   功能超级大的搜索工具。  
语法: 
find [路径]  [参数] [表达式]
下面是find常用的参数: 
-user:根据文件拥有者寻找文件 
-group:根据文件所属组寻找文件 
-name:根据文件名寻找文件 
-perm:根据文件权限寻找文件 
-size:根据文件大小寻找文件 
-type:根据文件类型寻找文件,参数对应c、b、l、f、d 
-o :表达式或 
-not :表达式非
现在我们测试第一个user参数,查找/home 下所有者为root的文件:find /home -user root
find命令详解
然后查找/etc下面与root有关的文件:find /etc -user root
find命令详解
第二个参数-group:根据文件所属组寻找文件,找 /boot 目录下 root组的文件  
find命令详解
name:根据文件名寻找文件,查找网卡配置文件
find / -name ifcfg-eth0这个命令就可以找到网卡的配置文件,你们44,ifcfg-eth0就是网卡的配置文件,上周我们是讲过的
find命令详解
-perm:根据文件权限寻找文件,自己创建一个权限是725的文件在家目录
find命令详解
然后用命令在根下找,找到这个文件:find / -perm 725
find命令详解
-size:根据文件大小寻找文件,查找/下面大小40M以上的文件,你们44
find命令详解
这里就有技巧了
大小前面用+ 表示大于这个值 
- 表示小于这个值 
不带符号就表示等于了 
单位也有讲究:k是小写的,
M和G是大写的 
这个一定要注意哈。不然你命令就运行不了
我们看下单位M小写出错的效果哈。
find命令详解
-type:根据文件类型寻找文件,参数对应c、b、l、f、d 
find命令详解
-nouser                          #查无有效属主的文件,即文件的属主在/etc/passwd中不存在 
-ctime   -n +n                #按文件创建时间来查找文件,-n指n天以内,+n指n天以前  
-nogroup                       #查无有效属组的文件,即文件的属组在/etc/groups中不存在 
-nouser                         #查无有效属主的文件,即文件的属主在/etc/passwd中不存在 
-newer  f1 !f2               #查更改时间比f1新但比f2旧的文件 
-type    b/d/c/p/l/f        #查是块设备、目录、字符设备、管道、符号链接、普通文件 
-size     n[c]                  #查长度为n块[或n字节]的文件 
-depth                          #使查找在进入子目录前先行查找完本目录 
-fstype                          #查位于某一类型文件系统中的文件,这些文件系统类型通常可 在/etc/fstab中找到 
-mount                         #查文件时不跨越文件系统mount点 
-follow                         #如果遇到符号链接文件,就跟踪链接所指的文件 
-cpio                            #查位于某一类型文件系统中的文件,这些文件系统类型通常可 在/etc/fstab中找到 
-mount                        #查文件时不跨越文件系统mount点 
-follow                        #如果遇到符号链接文件,就跟踪链接所指的文件 
-cpio                           #对匹配的文件使用cpio命令,将他们备份到磁带设备中 
-prune                        #忽略某个目录
这些命令你们了解下吧,知道有这个功能就行了,如果确实要用,再来研究
刚才有朋友问到,通配符号的问题,那下面大家查找 conf结尾的文件44
正规的写法是这样的find / -name "*.conf" ,需要用引号把内容包起来,这样系统不容易误解,不用也行。
find命令详解 
查找以两个小写字母和两个数字开头的txt文件,物们先建立两个文件:aa11.txt和bb22.txt
find命令详解 
find / -name "[a-z][a-z][0-9][0-9].txt"
find命令详解 
具体的你们需要灵活运行,我也就只是告诉你们方法
-o :表达式或 
-not :表达式非 
与是直接在后面加,不用其他参数
我要找conf 结尾,还要是20k以上的文件,大家44
find / -name "*.conf" -size +20k
find命令详解

转载于:https://my.oschina.net/denglz/blog/115077