Linux文件操作之文件查询与搜索命令详解
文件的查询和搜索也是最常用的操作,在嵌入式 Linux 开发中常常需要在 Linux 源码文件中查询某个文件是否存在,或者搜索哪些文件都调用了某个函数等等。本节我们就讲解两个最常用的文件查询和搜索命令:find 和 grep。 1、命令 find find 命令用于在目录结构中查找文件,其命令格式如下:
路径是要查找的目录路径,如果不写的话表示在当前目录下查找,关键字是文件名的一部分,主要参数如下: -name -depth 从指定目录下的最深层的子目录开始查找。 -gid<群组识别码> 查找符合指定的群组识别码的文件或目录。 -group<群组名称> 查找符合指定的群组名称的文件或目录。 -size<文件大小> 查找符合指定文件大小的文件。 -type<文件类型> 查找符合指定文件类型的文件。 -user<拥有者名称> 查找符合指定的拥有者名称的文件或目录。 find 命令的参数有很多,常用的就这些,关于其它的参数大家可以自行上网查找,我们来看一下如何使用find 命令进行文件搜索,我们搜索目录/etc 中以“vim”开头的文件为例,操作如图所示: find命令操作 从图中可以看出,在目录/etc 下,包含以“vim*”开头的文件有/etc/vim、/etc/vim/vimrc等等,就不一一列出了。 2、命令 grep find 命令用于在目录中搜索文件,我们有时候需要在文件中搜索一串关键字,grep 就是完成这个功能的,grep 命令用于查找包含指定关键字的文件,如果发现某个文件的内容包含所指定的关键字,grep 命令就会把包含指定关键字的这一行标记出来,grep 命令格式如下:
grep 命令一次只能查一个关键字,主要参数如下: -b 在显示符合关键字的那一列前,标记处该列第 1 个字符的位编号。 -c 计算符合关键字的列数。 -d<进行动作> 当指定要查找的是目录而非文件时,必须使用此参数!否则 grep 指令将回报信息并停止搜索。 -i 忽略字符大小写。 -v 反转查找,只显示不匹配的行。 -r 在指定目录中递归查找。 比如我们在目录/usr 下递归查找包含字符“Ubuntu”的文件,操作如图所示: 命令grep演示 3、文件类型查询命令 在用户根目录下使用命令“ls-l”来查看用户根目录下所有文件的详细信息,如图所示: 文件详细信息 在图中,每个文件的详细信息占一行,每行最前面都是一个符号就标记了当前文件类型,比如test1 的第一个字符是“d”,test1.tar.bz2 文件第一个字符是“-”。这些字符表示的文件类型如下: - 普通文件,一些应用程序创建的,比如文档、图片、音乐等等。 d 目录文件。 c 字符设备文件,Linux 驱动里面的字符设备驱动,比如串口设备,音频设备等。 b 块设备文件,存储设备驱动,比如硬盘,U 盘等。 l 符号连接文件,相当于Windwos 下的快捷方式。 s 套接字文件。 p 管道文件,主要指 FIFO 文件。 我们后面学习Linux 驱动开发的时候基本是在和字符设备文件和块设备文件打交道。 【编辑推荐】
点赞 0 (编辑:南京站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |