find - 搜索
文件搜索
语法:find [搜索范围] [匹配条件]
功能描述:文件搜索
-name 文件名
$ find /etc -name init
在目录/etc中查找文件init
-iname 文件名 不区分大小写
* 通配符
?单个字符匹配
$ find /etc -name *init*
在目录/etc中查找文件名包含init
$ find /etc -name init???
在目录/etc中查找文件名init开头并有3个字符的
$ find /etc -name init*
在目录/etc中查找文件名init开头的
tips:* 匹配任意字符,?匹配单个字符
-size 文件大小
+大于
-小于
$ find / -size +204800
在根目录下查找大于100MB的文件
+n 大于 -n 小于 n 等于
-user 文件所有者 /-group 文件所在组
$ find /home -user shenchao
在根目录下查找所有者为shenchao的文件
-?min文件时间
-amin 文件访问时间 -t 时间
-cmin 文件修改属性 -t 时间
-mmin 文件修改内容 -t 时间
$ find /etc -cmin -5
在/etc下查找5分钟内被修改过属性的文件和目录
-amin 访问时间 access
-cmin 文件属性 change
-mmin 文件内容 modify
-type 文件类型 f 文件 d 目录 l 软链接
-inum i结点
-a 连接属性 并且
-o 连接属性 或者
$ find /etc -size +163840 -a -size -204800
在/etc下查找大于80MB小于100MB的文件
-a 两个条件同时满足
-o 两个条件满足任意一个即可
-exec/ok 操作 {} \; 固定搭配
exec直接执行
ok进行询问
$ find /etc -name inittab -exec ls -l {} \;
在/etc下查找inittab文件并显示其详细信息
-exec/-ok 命令 {} \; 对搜索结果执行操作
tips:-exec直接执行,ok会询问操作
which
语法:which 命令
功能描述:搜索命令所在目录及别名信息
范例:$ which ls
whereis
语法:whereis [命令名称]
功能描述:搜索命令所在目录及帮助文档路径
范例:$ whereis ls
grep
语法:grep -iv [指定字串] [文件]
功能描述:在文件中搜寻字串匹配的行并输出
-i 不区分大小写
-v 排除指定字串
范例:
# grep mysql /root/install.log
# grep -v ^# /etc/inittab 去除以#开头的所有行信息,^表示以XXX开头