1.文件搜索命令locate
locate命令格式
locate 文件名
在后台数据库中按文件名搜索,搜索速度更快
/var/lib/mlocate(根据Linux版本不同,数据库名不一样)
locate命令所搜索的后台数据库,每天更新一次数据库updatedb,才搜索的到(刚新键的文件时搜搜不到的,需要updatedb才能实时搜索得到)
updatedb
更新数据库
Linux没有locate命令则需要安装 yum install mlocate,updatedb后才能用
/etc/updatedb.conf:查看搜索筛选规则
2.命令搜索命令whereis and which
搜素系统命令
-b:只查询可执行文件
-w:只查看帮助文档所在位置
which:里面还含有别名,但看不到相应的帮助文档
PATH环境变量:定义的是系统搜索命令的路径:echo $PATH
3.文件搜索命令find
搜索文件:find 【搜索范围】 【搜索条件】
避免大范围搜索,会非常耗费系统资源
find是在系统当中搜索符合条件的文件名。如果需要匹配,使用通配符匹配
find / -name install.log
find /root -iname(不区分大小写的搜索) install.log
find /root -user|-nouser root:按照所有者搜索
find /var/log -mtime +10:查找10天修改的文件
-10 10天内修改文件
10 10天当天修改的文件
+10 10天前修改的文件
atime 文件访问时间
ctime 改变文件属性
mtime 修改文件内容
find . -size 25k|-25k|+25k:查找当前目录下等于|小于|大于|25k大小的文件
find . inum 26624 查找i节点为26624文件
find . -size +20k -a -size -50k -exec(处理前面搜索的结果命令) ls -lh {}\;
-a: and 逻辑与
-o: or 逻辑或
{} \;标准格式
4.字符串搜索命令grep 、find&&grep区别
grep [选项] 字符串 文件名
-i:忽略大小写
-v:排除指定字符串
区别:搜索结果的包含关系
find:在系统当中搜索符合条件的文件名,如果需要匹配,使用通配符匹配,通配符时完全匹配。
grep:在文件当中搜索符合条件的字符串,如果需要匹配,使用正则表达式进行匹配,正则表达式时包含匹配
来源:https://www.cnblogs.com/Nyan-Workflow-FC/p/5658103.html