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 命令结合使用,可以添加输出重定向的命令(不在控制台打印,而保存为文本格式),这里只是抛砖引玉,更多的用法需要用户去自行学习。

最新文章

  1. 算法:冒泡排序(python版)
  2. 微软职位内部推荐-SW Engineer II for Cloud Service
  3. ubuntu mysql远程登录设置
  4. iOS学习06C语言结构体
  5. python 处理文件夹中的文件(新建另一个文件保存),listdir顺序输出
  6. Beautiful 疑问小记
  7. redis一句话
  8. WCF入门(8)
  9. C++指针(部分有误需修改)
  10. main()函数的输入参数 main(int argc, char** argv)
  11. ABAP程序执行效率和优化 ABAP Performance Examples
  12. jQuery实例1
  13. JavaScript 扫描枪使用(一)
  14. docker 初识之二(简单发布ASP.NET Core 网站)
  15. linkin大话面向对象--多态
  16. June 13. 2018 Week 24th. Wednesday
  17. 洛谷 P1126 机器人搬重物
  18. js判断手机系统(Android或IOS),跳转相应下载地址
  19. sqlserver 导入导出
  20. Python装饰器几个有用又好玩的例子

热门文章

  1. Holt-Winters
  2. git rebase和git merge的用法
  3. python之for循环
  4. jmeter 之系统参数根据条件修改
  5. RoR - More Active Record
  6. VUE-007-通过路由 router.push 传递 query 参数(路由 name 识别,请求链接显示参数传递)
  7. 解决nohup中不写入日志的问题
  8. Docker File知识
  9. scikit-learn学习笔记
  10. Java开发规范总结