2文件搜索命令
2.1文件搜索命令
locate
在后台数据库中按文件夹名搜索,搜素速度更快
/var/lib/mlocate
#locate命令所搜索的后台数据库
Update
更新数据库
/etc/updated.conf配置文件
PRUNE_BIND_MOUNTS=”YES”
#开启搜索限制
PRUNEFS=
#搜索时,不搜索的文件系统
PRUNENAMES=
#搜索时,不搜索的文件类型
PRUNEPATHS=
#搜索时,不搜索的路径
2.2搜索命令的命令
Whereis 命令名
#搜索命令所在路劲及帮助文档所在位置
选项:
-b:只查找可执行文件
-m:只查找帮助文件
Which 文件名
#搜索命令所在路径及别名
PATH环境变量
PATH环境变量:定义的是系统搜索命令的路径
Echo $PATH
2.3文件搜索命令find
Find [搜索范围] [搜索条件]
#搜索文件
Find / -name install.log
#避免大范围搜索,会非常耗费系统资源
#find是在系统当中搜索符合条件的文件名。如果需要匹配,是使用通配符匹配,通配符是完全匹配
Linux中的通配符
*匹配任意内容
?匹配任意一个字符
[ ]匹配任意一个种括号内的字符
find /root –iname install.log
#不区分大小写
find /root –usre root
#按照所有者搜索
find /root –nouser
#查找没有所有者的文件
没有所有者的文件可能是垃圾文件
Find /var/log/ -mtime +10
#查找10天前修改的文件
-10 10天内修改的文件
10 10天当天修改的文件
+10 10天前修改的文件
Atime 文件访问时间
Ctime 改变文件属性
Mtime 修改文件内容
Find . –size 25k
#查找文件大小是25KB的文件
-25K 小于25KB的文件
25K 等于25KB的文件
+25K 大于25K的文件
Find . –inum 262422
#查找i节点是262422的文件
Find /etc -size +20K -a -50k
#查找/etc目录下,大于20KB并且小于50KB的文件
-a and 逻辑与,两个条件都满足
-o or 逻辑或,两个条件满足一个即可
Find /etc –size +20k -a -size -50k -exec ls -lh {} \;
#查找/etc目录下,大于20KB并且小于50KB的文件,并显示详细信息
#-exec/-ok 命令{}\;对搜索结果执行操作
2.4find与grep的区别
搜索字符串命令grep
Grep [选项] 字符串 文件名
#在文件当中匹配符合条件的字符串
选项:
-i忽略大小写
-v排除指定字符串
Find命令:在系统当中搜索符合条件的文件名,如果需要匹配,使用通配符匹配,通配符是完全匹配。
Grep命令:在文件当中搜索符合条件字符串,如果需要匹配,使用正则表达式进行匹配,正则表达式时包含匹配。