Linux命令:grep和find命令

1. 简介

  • grep 命令: 在linux命令行中,经常需要对当前获取的一堆数据进行过滤、提取和分析,其中grep命令是非常重要的命令之一,比如,在开机log中经常使用到这个命令过滤信息:dmesg | grep kernel

  • find 命令: Linux find 命令用于在指定目录下查找文件和目录

2. find 命令

  • find命令语法:

    find pathname -options [-print -exec -ok ...] 
    
    find  [路径]    [选项]  [操作]
    
  • 示例 1:使用 -name 参数查找指定文件
    find 能够找到的是只有和搜索内容 file.txt一致的文件,而 /etx/file1.txt 文件虽然含有搜索关键字,但是不会被找到。这种特性我们总结为:find 命令是完全匹配的,必须和搜索关键字一模一样才会列出。

    查找 /etc 目录下是否有file.txt
    
    find /etc -name file.txt
    
  • 示例 2:Linux 中的文件名是区分大小写的,也就是说,搜索小写文件,是找不到大写文件的。如果想要大小通吃,就要使用 -iname 来搜索文件。

    touch CANGLS
    touch cangls
    
    #建立大写和小写文件
    find.-iname cangls
    ./CANGLS
    ./cangls
    #使用-iname,大小写文件通吃
    
  • 示例 3:将当前目录及其子目录下所有文件后缀为 .c 的文件列出来

     find . -name "*.c"
    
  • 示例 4:将当前目录及其子目录下所有文件名为overlay…的文件列出来

  •  find . -name "overlay*"
    

3. grep 命令

  • grep命令语法:

    grep   [options]   [pattern]   file
    
    grep   [选项参数]   [字符串]   [文件名]
    
  • 示例 1:在开机log中搜索与wifi相关的log打印:

    dmesg | grep wlan
    
  • 示例 2:在文件 file.txt 中查找字符串 “hello”,并打印匹配的行:

    grep hello file.txt
    
  • 示例 3:以递归的方式查找符合条件的文件。例如,查找指定目录/etc/acpi 及其子目录(如果存在子目录的话)下所有文件中包含字符串"update"的文件,并打印出该字符串所在行的内容,使用的命令为:

    grep -r update /etc/acpi
    
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嵌入式Linux开发

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值