# 三、文件搜索命令

# 文件搜索命令locate

  • locate 文件名
  • 在后台数据库中按文件名搜索,搜索速度更快
  • /var/lib/mlocate
  • #locate命令所搜索的后台数据库
  • updatedb
  • 更新数据库

# 命令搜索命令 whereis与which

  • whereis 命令名

  • #搜索命令所在路径及帮助文档所在位置

  • 选项: -b:只查找可执行文件 -m:只查找帮助文件

  • which 命令名

  • #搜索命令所在路径及别名

# 文件搜索命令find

  • find [搜索范围] [搜索条件]
  • #搜索文件
  • find / -name install.log
  • #避免大范围搜索,会非常耗费系统资源
  • #find是在系统当中搜索符合条件的文件名。
  • 如果需要匹配, 使用通配符匹配,通配符是完全匹配

例子:

  1. find /root -iname install.log #不区分大小写
  2. find /root -user root #按照所有者搜索
  3. find /root -nouser #查找没有所有者的文件

# 字符串搜索命令grep

  • grep [选项] 字符串 文件名
  • #在文件当中匹配符合条件的字符串

选项:

  • -i 忽略大小写
  • -v 排除指定字符串

# find命令与grep命令的区别

  • find命令:在系统当中搜索符合条件的文件名,如果需要匹配 ,使用通配符匹配,通配符是完全匹配
  • grep命令:在文件当中搜索符合条件的字符串,如果需要匹配 ,使用正则表达式进行匹配,正则表达式时包含匹配

# Linu中的通配符

  • * 匹配任意内容
  • ? 匹配任意一个字符
  • [] 匹配任意一个中括号内的字符