1. 文件搜索命令locate(搜索速度快,功能单一,只能搜文件名)
>>> locate文件名
locate是后台数据库搜索,搜索速度快。
locate 使用要点:注数据库默认是每天更新一次,可以用updatedb 命令来立刻更新数据库。 速度最快。只能按照文件名来搜索。
locate缺点只能按照文件名来搜索优点是搜索速度快 因为在他在自己的数据库搜索
locate搜索配置文件/etc/updatedb.conf
/etc/updatedb.conf配置文件
·PRUNE_BIND_MOUNTS = "yes"
#开启搜素限制
· PRUNEFS=
#搜索时,不搜索的文件系统
·PRUNENAMES =
#搜索时,不搜索的文件类型
·PRUNEPATHS =
#搜索时,不搜索的路径
2. 命令搜索命令
whereis 可以搜索命令的绝对路径和帮助文档(whoami, whatis ls 文件干嘛的)
which 可以搜索到命令的别名、所在位置
echo $PATH环境变量,把命令所在目录放到这里可以直接输入命令而不用加绝对路径(系统命令可以不加绝对路径)
cd 是shell是linux本身的交互,不是外部命令(后来安装的命令)
Whereis which找到的都是外部命令
3. 文件搜索命令find(遍历所有,速度慢)
find + 范围 + -name + 搜索名字
>>> find/ -name install.log
#避免大范围搜索,会非常耗费系统资源
#find是在系统当中搜索符合条件的文件名。如果需要匹配,使用通配符匹配,通配符是完全匹配
Linux中的通配符
* 匹配任意内容
? 匹配任意一个字符
[] 匹配任意一个中括号内的字符
>>> find + 范围 + -iname + 搜索名字
#不区分大小写
>>> find + 范围 + -user + 用户名字
>>> find /root -user root
#按照所有者搜索
>>> find + 范围 + -nouser
>>> find /root -nouser
#查找没有所有者的文件,通常用于删除垃圾文件
>>> find + 范围 + -? + ?
#atime文件访问时间 ctime改变文件属性 mtime 修改文件内容
>>> find /var/log/ -mtime +10
#查找10天前修改的文件
-10 10天内修改的文件
10 10天当天修改的文件
+10 10天前修改的文件
>>> find + 范围 + -size + 文件大小
# 单位为KB时k小写,MB时M大写<br><br>
>>> find . -size 25k
#查找(. 代表当前目录)文件大小是25KB的文件
-25K 小于25KB的文件
25K 等于25KB的文件
+25K 大于25KB的文件
>>> find /etc -size +20k -a -size -50k
#查找/etc/目录下,大于20KB并且小于50KB的文件
-a and逻辑与,两个条件都满足
-o or 逻辑或,两个条件满足一个即可
>>> find /etc -size +20k -a -size -50k -exec ls -lh {} \;
#查找/etc/目录下,大于20KB并且小于50KB的文件,并显示详细信息
#-exec/-ok命令{} \; 对搜索结果执行操作
>>> find . -inum 262422
#查找i节点是262422的文件
4. grep
find 系统中搜索文件名,使用通配符。 grep 在文件中搜索字符串,使用正则表达式