刚开始学Linux,这是关于Linux文件搜索命令,就目前,尽我所能把他写全一点,后期随时补充

文件搜索命令

一、locate命令

二、find命令

三、grep命令

四、find命令和grep命令的区别

1、locate命令

语法: locate 文件名

例:locate user(搜索user的文件名)

优点:搜索速度快

缺点:只能搜索指定文件名,比方搜索user 文件的时候只会搜索到user,搜索不到users

注意:locate并不是在数据库里面搜索的,而是在/var/lib/mlocate里面进行搜索的,但是mlocate不是实时更新的,是一天更新一次,所以当你新建一个文件夹,locate命令是搜不到的,这个时候就需要用一个更新数据库的命令

更新命令:updatedb (强制更新)

2、find命令

语法:find [搜索范围]  [搜索条件]

例   :find /root -name User(在root目录下搜索文件名为User文件)

注意:find命令查询出来的文件同样只能和搜索出来的文件名要一模一样,如果要进行模糊查询,就要用到通配符

linux的通配符

*   匹配任意内容

例:find /root -name *d (查询root目录下文件名以d结尾的文件名)

?  匹配一个内容

例: find /root -name us?r (查询root目录下文件文件名是us什么r的文件)

[]  匹配任意一个中括号内的字符

例:find /root -name user[sd] (查询root目录下文件名是users和userd的文件)

补充:除此之外find还有其他的命令

1.  -i 不区分大小写

    find /root -iname User

2.  搜索有所有者的文件

find /root -user root

3.  搜索没有所有者的文件(如果有则是垃圾文件,可删除)

find /root -nouser root

4.  查询指定时间内的文件

  -atime 文件询问时间

  -ctime 改变文件属性

  -mtime 修改文件内容

例: find /var/log -mtime +10 (查询/var/log下10天前修改的文件)

+10   查询10天前的文件

10     查询10天当天的文件

-10    查询10天内修改的文件

5.  查找指定大小的文件

     find -size 25k

     find -size 20M

注意:  k为小写、M为大写(一定要这么写,不然会报错)

6.  查找文件名和 i 节点

    find /home -inum 262242 (查找/home目录下i节点为262242的文件名)

7.  并且、或者

    -a   and 并且    ,两个文件都满足

    -o   or 或者  ,两个条件有一个满足即可

例: find /home -size +20k -a -size -50k  (查询在home目录下文件在大于20k并且小于50k的文件)

8.  -exec 命令 {} \     命令2处理命令1搜索出来的结果

   find /home -size +20k -a -size -50k  -exec rm {} \; (查询在home目录下文件在大于20k并且小于50k的文件之后删掉他)

3、grep命令

语法: grep [选项] 字符串 文件名

    -i  忽略大小写

    -v 排除指定字符串(取反)

例:grep "size" User (查找User文件里面有size的字符串)

注意:指定字符串一定要用" "

4、find命令和grep命令的区别

find命令:在系统中搜索文件名,如需模糊查询,则需要通配符(*,[],?   上文有讲)

grep命令:在文件中搜索指定字符串,入去匹配,则要用正则表达式

Linux的文件搜索命令(locate ,find,grep,find命令和)的更多相关文章

  1. 4.Linux的文件搜索命令

    1.文件搜索命令  which 语法:which [命令名称] 范例:$which ls  列出ls命令所在目录 [chanshuyi@localhost ~]$ which ls alias ls= ...

  2. Linux操作系统的文件查找工具locate和find命令常用参数介绍

    Linux操作系统的文件查找工具locate和find命令常用参数介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.非实时查找(数据库查找)locate工具  locate命 ...

  3. Linux下文件搜索、查找、查看命令

    Linux下文件搜索.查找.查看命令 1.最强大的搜索命令:find 查找各种文件的命令 2.在文件资料中查找文件:locate 3.搜索命令所在的目录及别名信息:which 4.搜索命令所在的目录及 ...

  4. Linux 之 文件搜索命令

    文件搜索命令 参考教程:[千峰教育] 文件搜索定位 grep: 作用:通用规则表达式分析程序,是一种强大的文本搜索工具, 它能使用正则表达式搜索文本,并把匹配的行打印出来. 格式:grep [选项] ...

  5. linux下文件搜索命令学习笔记

    1. locate:按照文件名搜索文件 locate filename 与find在整个操作系统中遍历搜索不同,locate命令在/var/lib/mlocate这个后台数据库中按照文件名搜索,所以优 ...

  6. Linux基本命令 文件搜索命令

    1.文件搜索命令find ================================================================================== 命令名称 ...

  7. [Linux] 012 文件搜索命令

    文件搜索命令:find 命令名称:find 命令所在路径:/bin/find 执行权限:所有用户 语法:find [搜索范围] [匹配条件] 功能描述:文件搜索 范例: 在目录 /etc 中查找文件 ...

  8. linux文件管理 文件搜索

    文件搜索命令find 'find [搜索范围] [搜索条件]' 搜索文件 find / -name install.log #避免大范围搜索,会非常消耗系统资源 #find是在系统当中搜索符合条件的文 ...

  9. Linux统计文件/目录数量ls -l | grep "^-" | wc -l匹配开头和结尾

    Linux统计文件数量 ls -l | grep "^-" | wc -l “^-”  一般文件 “^d” 目录文件 shell/vim中^表示开头 cat repatterns ...

随机推荐

  1. BNUOJ 3278 Candies

    Candies Time Limit: 1500ms Memory Limit: 131072KB This problem will be judged on PKU. Original ID: 3 ...

  2. [luoguP1033] 自由落体(模拟?)

    传送门 这不能算是数论题... 卡精度这事noip也做的出来.. 代码 #include <cmath> #include <cstdio> int n, ans; doubl ...

  3. HDU 4968 (水dp 其他?)

    +;],dp1[][],dp2[][]; map<      memset(GPA,,     ;i<=;i++) hash[i]=;     ;i<=;i++) hash[i]=; ...

  4. Spring Data JPA 中常用注解

    一.java对象与数据库字段转化 1.@Entity:标识实体类是JPA实体,告诉JPA在程序运行时生成实体类对应表 2.@Table:设置实体类在数据库所对应的表名 3.@Id:标识类里所在变量为主 ...

  5. topshelf生成Windows服务

    一.  概述 Visual C# 工程中选取 Windows 服务(Windows Service)选项,可以创建Windows服务程序,这种开发方式对于开发来说不方便调试,今天介绍另外一种生成Win ...

  6. Java日期LocalDate使用

    在做报表统计时,需要对指定时间内的数据做统计,则需要使用到时间日期API 在此使用的是java.util.Date的完美私生子LocalDate类 LocalDate方法介绍 now() : 从默认时 ...

  7. Java这样学,Offer随便拿,学习方法和面试经验分享

    Java这样学,Offer随便拿,学习方法和面试经验分享 学习中:https://mp.weixin.qq.com/s/iSutLzqCiPMWwm_Rm_2oPw

  8. php删除数组中指定值的元素

    php删除数组中指定值的元素 /** * 删除数组中指定值的元素 * @author: ibrahim * @param array $arr 数组 * @param string $val 值 * ...

  9. 让你完全理解base64是怎么回事

    HTTP将BASE64-编码用于基本认证和摘要认证,在几种HTTP扩展中也使用了该编码. Base-64编码保证了二进制数据的安全 Base-64编码可以将任意一组字节转换为较长的常见文本字符序列,从 ...

  10. 浅谈MySQL load data local infile细节 -- 从源码层面

    相信大伙对mysql的load data local infile并不陌生,今天来巩固一下这里面隐藏的一些细节,对于想自己动手开发一个mysql客户端有哪些点需要注意的呢? 首先,了解一下流程: 3个 ...