频道栏目
首页 > 资讯 > Linux > 正文

Linux命令——文件搜索命令

17-03-06        来源:[db:作者]  
收藏   我要投稿

Linux命令——文件搜索命令

尽量减少搜索

find 
locate
updatedb
which
whereis
grep

find

语法

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

示例

    find /etc -name init    精确查找init名称的文件
    find /etc -name  *init*  模糊匹配
    find /etc -name init??? 
    find /etc -iname init*  不区分大小写
    find / -size +204800    查找大于100M的文件
                 -          少于
        linux按数据块记录文件的大小,1个数据块为0.5KB
    find /home -user jeff   按所有者查找
    find/home -group jeff   所属组

    find /temp -amin -5     按文件的访问时间 -5 5min内
                -cmin       属性修改
                -mmin       内容修改
    find /etc -name init* -a -type d

            -a 且连接多个条件
            -o 或连接
            -type 文件类型
                f   文件
                d   目录
                l   链接

    find /home -user jeff -ok rm {} \; 查询所有者jeff的文件,并执行删除操作

            -ok     在执行前会询问用户
            -exec   直接执行
            {} \;   固定格式

    [root@localhost tmp]# find /home -user jeff -ok rm {} \;
    < rm ... /home/jeff > ? n
    < rm ... /home/jeff/.bashrc > ? n
    < rm ... /home/jeff/.bash_logout > ? n
    < rm ... /home/jeff/.gnome2 > ? n
    < rm ... /home/jeff/.bash_profile > ? n

    find ./temp -inum  266092 -ok rm {} \;  按节点查找

其它搜索命令

locate

实现快速查找 locate 是根据linux的资料库快速查找,其中tmp目录下的文件不能用该命令查找, 并且对于新建的文件可能无法查找,需要更新资料库
locate inittab  查找文件inittab
updatedb    更新资料库

which

查找命令的所在位置

whereis

同which 但它可以列出命令文档所在的位置

grep

查找文件内容关键字的所在行
grep multiuser /etc/inittab     列出文件inittab含有关键字multiuser的行
grep -i multiuser /etc/inittab  忽略大小写
grep -v ^# /etc/inittab         排除文件inittab中行首为注释字符#的行
相关TAG标签
上一篇:MySQL二进制日志格式对复制的影响
下一篇:Keepalived+Master-Master-Slave组合
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站