文件搜索命令:find
所在路径:/user/bin/find
执行权限:所有用户
功能描述:查找文件和目录
语法:find [搜索范围][匹配条件]
EG:
-name 根据文件名查找
*匹配任意字符 ?匹配单个字符
find /etc –name init*
find /etc –name init???
Find /etc –name *init
-size 根据文件大小查找 单位:数据块:512 数据块是最小的数据储存单位。
100m=102400k=204800
+n 大于多少 n 等于多少 -n 小于多少
Find / -size +204800
在根目录下查找大于100M的文件
Find /home –user testuser
在home下查找用户testuser的文件
Find /etc -group adm
Find /etc –cmin -5
在/etc下查找5分钟中内被修改过的属性文档和目录
Find /etc –size +163840 –a –size -204800
在etc下查找大于80M小于100M的文件
Find /etc –name inittab –exec ls –l {}\;
在etc下查找inittab文件并显示其详细信息
PS:find 搜索范围越小越好, 匹配的条件越精确越好。
根据文件所有者查找: -user
根据时间值查找:
Time (天) min(分钟)
-atime -amin a-access 访问
-ctime -cmin c-change 改变属性(ls –l,权限,所有者,所属组….)
-mtime -mmin m-modify 改变文件内容
根据文件类型查找:-type
f 二进制文件
l 软连接文件
d 目录
逻辑连接符:-a -o
-a a=and 逻辑与 两个条件都符合
-o o=or 逻辑或 两个条件符合一个即可
Find 搜索范围 匹配条件 -exec/-ok 命令 {} \ ;
-exec 命令 {} \ ;
-ok 询问确认
{} 代表 find 查找的结果
\ 转义字符 让它后面的命令或符号使用其本身的含义
;结束
所以\ ;表示 ;使用本身的含义结束的
m a 不提示删除A文件夹
1、并不支持所有命令,常用 ls- l rm cp mv
2、-exec 和 –ok 只支持find命令
Find /etc –name init??? –exec cp –p {} /backup \;
Find /etc -name inittab –exec ls –l {} \;
Find /home –user test –ok rm {} \;
Find /etc –name init* -a –type f –exec cp –p {} /backup \;
根据I节点查找 -inum number
Find . –inum 1815309 –ok rm {} \;
Find . –inum 1815309 –ok mv {} abc \;
Find /etc –inum –iname ‘X??’
文件名查找匹配条件过于简单的话,匹配表示式用单引号括起来
-inum 是忽略大小写 invert name