美文网首页linux
文件搜索命令

文件搜索命令

作者: 文刀雨 | 来源:发表于2019-05-16 21:37 被阅读0次
    • 文件搜索命令locate
    • 命令搜索命令whereis 与which
    • 文件搜索命令find
    • 字符串搜索命令grep
    • find命令与grep命令的区别

    文件搜索命令locate

    locate 优点 速度快
    缺点 只能按照文件名查找,只能查找数据库中有的
    功能弱

    使用方式 locate 文件名
    原理
    在后台数据库中按文件名搜索,搜索速度更快
    /var/lib/mlocate locate命令所搜索的后台数据库

    数据库默认每天更新一次
    使用updatedb命令可以手动更新数据库

    搜索规则
    /etc/updatedb.conf 配置文件

    名称 规则
    PRUNE_BIND_MOUNTS="yes" 开启搜索限制
    PRUNEFS= 搜索时,不搜索的文件系统
    PRUNENAMES= 搜索时,不搜索的文件类型
    PRUNEPATHS= 搜索时,不搜索的路径

    命令搜索命令whereis 与which

    whereis 命令名
    搜索命令所在路径及帮助文档所在位置
    选项:
    -b :只查找可执行文件
    -m:只查找帮助文件
    🌰 whereis ls

    搜索命令的命令which

    which 文件名
    搜索命令所在路径及别名
    🌰 which pwd

    PATH环境变量

    定义的是系统搜索命令的路径

    find 命令

    find [搜索范围][搜索条件]

    指令 搜索的条件
    -name 名称
    -iname 名称不区分大小写
    -user 所有者
    -nouser 查找没有所有者的文件
    atime 文件访问时间
    ctime 改变文件属性
    mtime 修改文件内容
    -mtime+10 10天前修改的文件 默认单位天
    -mtime10 10天当天修改的文件
    -mtime-10 10天内修改的文件 查找日志使用
    -size 文件大小
    -size -25k 小于25kb的文件
    -size 25k 等于25kb的文件 k小写
    -size +25M 大于25MB的文件 M大写
    -inum 123 查找i节点是123 的文件
    -size +20k -a -size -50k 大于20k 并且小于50k -a and 逻辑与-o or 逻辑或
    -exec/-搜索结果可以执行的命令{}\; 对搜索结果执行操作

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

    通配符 含义
    * 匹配任意内容
    匹配任意一个字符
    [] 匹配任意一个中括号内的字符

    🌰 find /root -name "ab[cd]"
    找到 abc abd

    grep命令

    grep [选项] 字符串 文件名
    在文件当中匹配符合条件的字符串
    选项:
    -i 忽略大小写
    -v 排除指定字符串

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

    相关文章

      网友评论

        本文标题:文件搜索命令

        本文链接:https://www.haomeiwen.com/subject/movwaqtx.html