美文网首页
Linux下的文件搜索

Linux下的文件搜索

作者: 卢桂林 | 来源:发表于2017-03-17 10:11 被阅读0次
    • 文件搜索命令locate

    locate aaa.txt 这个命令速度快,但是它只能搜索文件名
    因为locate是搜索的/var/lib/mlocate的数据库下mlocate里面搜索,所以新建的文件不会被刷新到这个库里面来,但是我们可以手动刷新这个库updatedb刷新数据库指令
    但是这里还有一个梗,locate的数据库mlocate并不会记录所有的数据文件的,它有一个配置文件 /etc/updatedb.config

    updatedb.config 表示文件意义

    • PRUNE_BIND_MOUNTS="yes"  yes开启限制,no反之
    • PRUNEFS=   不搜索的文件系统
    • PRUNENAMES=   不搜索的文件类型
    • PRUNEPATHS=   不搜索的路径
    • 命令搜索命令whereis与which

    命令搜索命令 只能用来搜索命令

    • whereis搜索命令所在路径和帮组文档位置
      whereis -bm ls

    -b只查找可执行文件
    -m只查找帮助文档(可以理解为 man缩写)
    whoami查看当前操作用户
    想要知道命令是干嘛的用whatis 例如:whatis ls

    • which不仅可以搜索命令,还可以查看命令的别名(但是不是所有的文件都有别名)

    which ls

    • PATH环境变量

    打印环境变量命令echo $PATH 使用的命令都会在这里配置文件夹里面找

    • 文件搜索命令find

    • find

    find [范围路径] [搜索条件] [搜索文件]    应该尽量缩小范围,提高性能
    例如:find / -name install.log
    find搜索的是完全匹配,所以我们一般需使用通配符

    • 通配符(跟正则差不多)
    • ? 匹配任意一个字符
    • * 匹配任意内容
    • [] 匹配任意一个中括号内的字符
    • -iname 不区分大小写

    find /root -iname install.log

    • -user 按照所有者搜索

    find /root -user root

    • -nouser 查找没有所有者的文件

    find /root -nouser
    没有所有者的文件一般都是垃圾文件,内核文件、外来数据没有所有者,例如系统生产的文件,护着windows生成的文件U盘

    • -mtime 修改文件内容

    find /var/log/ -mtime +10十天前修改的文件

    • -10 10天内修改的文件
    • 10 10天当天修改的文件
    • +10 10天前修改的文件
    • -atime 文件访问时间
    • -ctime 改变文件属性的时间
    • -size 文件大小条件

    find . -size 25k当前目录下大小为25kb的文件
    -25k小于25kb的文件
    25k等于25kb的文件
    +25k大于25kb的文件
    (注意单位的大小写 k M 如果不加单位则是表示25个扇区大小)

    • -inum 查找磁盘表中i节点

    find . -inum 456745当前目录下找i节点为456745的文件

    • 逻辑条件 -a 与 -o或(-and -or)
    imageimage
    只要写了-exec后面就要加空格{}空格\;
    • 字符串搜索命令greg

    grep [选项] 字符串 文件名(在指定的文件中匹配符合条件的字符串,条件字符串可以配合正则一起使用)
    grep "你好啊" aaa.txt

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

    相关文章

      网友评论

          本文标题:Linux下的文件搜索

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