centos 文件搜索命令

1、locate命令
   形式: locate 文件名   

    在后台数据库中按文件名搜索(模糊查询),搜索速度更快,/var/lib/mlocate为#locate命令所搜索的后台数据库
    我们用locate命令的时候若发现未找到命令,则用Yum命令远程安装下locate
         [root@localhost ~]# yum -y install mlocate      (虚拟机上改为nat模式进行安装,然后改回桥接模式,xshell链接)
         [root@localhost ~]# locate 牛
    updatedb    更新数据库,文件发生改变时需手动更新,然后搜索
        [root@localhost ~]# updatedb

2、find  文件搜索
    find [搜索范围] [搜索条件] [搜索文件(可包含通配符)]
        find / -name install.log   (/表示在根目录下搜索,-name表示按文件名搜索)
    如果我们需要进行模糊查询,我们要使用通配符;
        * 匹配任意内容  
        ?匹配任意一个字符
        []匹配任意一个中括号的字符
        [root@localhost ~]# find / -name "牛*"     查找开头是 “牛”的所有文件
    搜索条件:
        find /root -user root    查找所有者为root的文件
        find /root -nouser       查找没有所有者的文件
        [root@localhost ~]# find /root -iname java      linux是严格区分大小写的,用-iname 查询时不区分大小写;
        find /var/log/ -mtime +10        查找10天前修改的文件
            -10   10天内修改的文件
            10    第10天修改的文件
            +10   10天前修改的文件
        atime     根据 访问文件时间 搜索
        ctime     根据 改变文件属性时间 搜索
        mtime     根据 修改文件时间 搜索
        find /root  -size 2k       查找文件大小是1到2KB的文件(进一法)
            -2k 小于2KB的文件
            2k 等于2KB的文件
            +2k 大于2KB的文件
        find /root -inum 262422    查找i节点是262422的文件
        find /etc -size +20k -a -size -50k      查找/etc/目录下,大于20KB并且小于50KB的文件
            -a    and 逻辑与
            -o    or 逻辑或
        find /etc -size +20k -a -size -50k -exec ls -lh {} \ ;    查找,并显示详细信息;
            -exec/-ok 命令{} \;      对搜索结果执行操作;

3、grep命令:   在文件当中匹配符合条件的字符串
    grep [选项] 字符串 文件名    
    选项:-i 忽略大小写
          -v 排除指定字符串
    [root@localhost ~]# grep work java    查找java文件中含有"work"字符串的行
    [root@localhost ~]# grep -v  work java   查找java文件中不含有"work"字符串的行
    在vi编辑时进行字符搜索  :/sava (搜索字符串save)  n下一个,shift+n上一个

   

你可能感兴趣的:(centos 文件搜索命令)