1、命令名称:find
命令所在路径:/bin/find
执行权限:所有用户
语法:find [搜索范围] [匹配条件]
功能描述:文件搜索
2、以文件名查找
范例:find /etc -name init 搜素etc目录下以文件名为init的文件,注意是精确搜索
find /etc -name *init* 搜索etc目录下包含init的文件,*通配符匹配任何字符包括零个字符。
find /etc -name init??? 搜索etc目录下init后加三个字符的文件。?通配符匹配一个字符
find /etc -iname init 搜索etc目录下init文件,iname为不区分大小写查找
3、以文件大小来查找
范例: find / -size [+_=]204800 在根目录下查找大于100MB的文件。
204800为数据块,Linux中1数据块等于0.5KB,204800数据块=100MB
4、以所有者或所属组查找
范例:find /home -user[或-gruop] shenchao 在家目录下查找所有者(或者所属组)为shenchao的文件。
5、根据时间属性来查找
范例:find /etc -cmin [+_=]5 在/etc下查找5分钟内(超过或等于)被修改过属性的文件和目录
-amin 访问时间access
-cmin 文件属性change
-mmin 文件内容modify
注意一个是改变文件属性,一个是改变文件内容
6、查找的联合命令
范例:find /etc -size +163840 -a -size -204800 在/etc目录下查找大于80MB小于100MB的文件
-a 表示and ,两个条件同时满足
-o 表示or,两个条件满足任意一个即可。
find /etc -name inittab -exec ls -l {} \; 在/etc目录下查找inittab文件并显示其详细信息
-exec[-ok] xx命令 {} \; 表示对搜索结果执行xx操作
-exec和-ok的区别是,-ok会对每一个搜索结果执行操作前进行询问。
可联合多个命令,范例:
find /etc -name init??? -a -type f -exec ls -l {} \;
表示在etc目录下以文件名查找init???文件,不查找此类目录或软连接,并对查找结果显示详细信息。
7、根据类型或i节点查找
-type 根据文件类型查找:f 文件 。 d 目录 。 l 软连接文件
-inum 根据i节点查找:主要用于文件名奇怪不方便,或者寻找文件的硬链接