grep 以及find 命令

1. find 命令

Linux 下find 命令在目录结构中搜索文件,并执行指定的操作。Linux 下find 命令提供了相当多的查找条件,功能很强大。由于find 具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下。在运行一个非常消耗资源的find 命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统可能会花费很长的时间。后台运行只需要在命令中添加空格+&字符即可。

find 命令格式如下:

find pathname -options [-print -exec -ok ...]

命令功能:

用于在文件树中查找文件,并作出相应的处理。

find 命令的参数以及选项,用户可以通过网络或者man 命令来学习,这方面的资料非常多,man 命令如下图所示。

find 命令举例。

如下图所示,在Ubuntu 中将内核源码解压之后,进入该目录。

假如想查找led 的驱动,用户最好将内核先编译,因为编译之后会生成.o 文件,那么我们搜索的时候就可以将.o 作为关键字。

如下图所示,使用命令“find ./ -name *led*.o”

命令中的*表示缺省,可以为任意字符。这里就可以非常快的搜索出led 的驱动文件以及所在的目录。

2 .grep 命令

Linux 系统中grep 命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。grep 全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。

grep 命令格式:

grep [options]

grep 命令的参数可以使用man 命令或者网络来学习。

结合前面介绍的find 命令,我们先进入led 驱动所在的目录,然后使用grep 命令,如下图所示

在应用中,在系统编程中,我们会调用ioctl 函数来控制led 的亮灭,这里我们想搜索“ioctl”关键字。如下图所示,使用命令“grep 'ioctl' -rn *”。

如上图所示,这里搜索出来的太多,所以还需要限定范围。使用命令“grep 'ioctl' -rn *led*”,这个命令表示,在当前目录下,文件名称中包含“led”的文件中搜索并打印出“ioctl”的行,如下图所示。

grep 命令还有很多其他用法,例如可以将grep 和find 命令结合使用,可以添加输出重定向的命令(不在控制台打印,而保存为文本格式),这里只是抛砖引玉,更多的用法需要用户去自行学习。

grep 以及find 命令的更多相关文章

  1. grep egrep fgrep命令

    一.grep.egrep.fgrep命令 本文中主要介绍了linux系统下grep egrep fgrep命令和正则表达式的基本参数和使用格式.方法.(注释:文中fg代表例子,) 1.1.基本定义: ...

  2. grep、egrep命令用法

    何谓正则表达式 正则表达式,又称正规表示法.常规表示法(Regular Expression,在代码中常简写为regex.regexp或RE),是一类字符所书写的模式,其中许多字符不表示其字面意义,而 ...

  3. grep的常用命令语法

    grep的常用命令语法 1. 双引号引用和单引号引用在g r e p命令中输入字符串参数时,最好将其用双引号括起来.例如:"m y s t r i n g".这样做有两个原因,一是 ...

  4. Linux 使用grep过滤多个条件及grep常用过滤命令

    这篇文章主要介绍了Linux 使用grep筛选多个条件及grep常用过滤命令,需要的朋友可以参考下 cat log.txt | grep 条件: cat log.txt | grep 条件一 | gr ...

  5. grep与find命令的区别

    grep与find命令的区别:grep搜索的是文本,find搜索的是文件,换句话说就是grep是查找匹配条件的行,find是搜索匹配条件的文件. grep文本搜索/过滤 用法:grep[参数]搜索字符 ...

  6. Linux中grep和egrep命令详解

    rep / egrep 语法: grep  [-cinvABC]  'word'  filename -c :打印符合要求的行数-i :忽略大小写-n :在输出符合要求的行的同时连同行号一起输出-v ...

  7. Linux常用命令学习2---(文件搜索命令locate find、命令搜索命令whereis which、字符串搜索命令grep、帮助命令man)

     1.文件搜索命令:locate [文件名]    在后台数据库中按文件名搜索,搜索速度比find快,耗费资源更少    例子:locate test.txt,就会显示文件名包含 test.txt的所 ...

  8. grep 和 wc命令 --- !管道命令!

    Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expr ession Print,表示全局正则表 ...

  9. linux grep、find 命令详解

    grep1.作用grep命令可以指定文件中搜索特定的内容,并将含有这些内容的行标准输出.grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权 ...

随机推荐

  1. day23:类的命名空间和组合

    1,类属性:静态属性,方法:动态属性:双下init方法,每当我们调用类的时候就会自动的触发这个方法,默认传self,在init方法里面可以对self赋值:在类的内部,self就是一个对象,我们自己实例 ...

  2. [dev][dpdk][crypto] dpdk加解密设备与IPSEC

    概述 分三部分,加解密框架(crypto framework),加解密设备(crypto dev),安全协议(Security Framework) ×  API,设计思路等,都在加解密框架里:见文档 ...

  3. 音频 m4a 转 wav

    背景 最近做智能家居,需要用到一些应答词 需要自己录制.但是在mac下面通过 QuickTime 录制的是 m4a格式.但是应答词需要 wav格式.所以就需要转化了 解决方法 # sox 不行, ff ...

  4. Linux - ansible 安装

    # 安装依赖 yum install rpm-build python2-devel sshpass PyYAML python-jinja2 python-paramiko python-six p ...

  5. 数据结构 - 表插入排序 具体解释 及 代码(C++)

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/u012515223/article/details/24323125 表插入排序 具体解释 及 代码 ...

  6. 2018-2019-2 20165236 《网络对抗技术》Exp4 恶意代码分析

    2018-2019-2 20165236 <网络对抗技术>Exp4 恶意代码分析 一.1.实践目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行; 1.2是分析一个恶意软件, ...

  7. 2019年IntelliJ IDEA 最新注册码,亲测可用(截止到2020年3月11日)

    2019年IntelliJ IDEA 最新注册码(截止到2020年3月11日) 操作步骤: 第一步:  修改 hosts 文件 ~~~ 在hosts文件中,添加以下映射关系: 0.0.0.0 acco ...

  8. stm32定时器输出移相PWM(非主从模式)

    背景:由于项目需要,需要stm32输出任意相角度的PWM 前提知识: 1.stm32定时器的Tim,一般有多个OC.具体差别根据型号来定. 2.定时器的使能,理论上是多个通道同时使能 3.TIM_OC ...

  9. typeof 踩坑总结

    typeof '123' == 'string'  // true typeof ('123' == 'string' ) // "boolean" typeof 123 == N ...

  10. JDK丨WIN10配置JDK1.8 (解决javac不是内部或外部命令,也不是可运行的程序或批处理文件)

    1.下载JDK,安装. 2.配置JDK. (右键我的电脑 - 属性 - 高级系统设置 - 环境变量.) 2.1 添加系统变量JAVA_HOME 变量名:JAVA_HOME 变量值:C:\Program ...