linux 根据文件内容查找文件 linux按文件内容查找
一、前言
Linux系统提供了多种查找文件的命令,而且每种查找命令都具有其独特的优势,下面详细总结一下常用的几个Linux查找命令 。

文章插图
二、which命令
查找类型:二进制文件;
检索范围:PATH环境变量里面指定的路径中查找;
通过which命令可以快速返回某个指定命令的位置信息 。

文章插图
优点:查找速度快;
缺点:仅支持二进制文件;
三、whereis命令
查找类型:二进制文件,man帮助文件,及源代码文件;
检索范围:/usr目录
通过whereis命令可以快速返回某个指定命令的位置信息,及其man文件和源代码文件的位置信息(如果存在的话) 。
当然也可以通过参数指定返回某一类查找结果:
-b: 仅查找二进制文件;
-m: 仅查找man帮助文件;
-s: 仅查找源代码文件;

文章插图
优点:查找速度快;
缺点:查找文件类型及范围均有限;
四、locate命令
查找类型:所有文件;
检索范围:locatedb数据库;
locate是Linux系统提供的一种快速检索全局文件的系统命令,它并不是真的去检索所以系统目录,而是检索一个数据库文件locatedb(Ubuntu系统位置/var/cache/locate/locatedb),该数据库文件包含了系统所有文件的路径索引信息,所以查找速度很快 。
Linux系统动创建这个数据库,并且每天动更新次,所以对于新变动的文件(如新安装或新拷贝)使locate命令是查不到的 。为了避免这种情况,可以在使locate命令之前,先执行一下"sudo updatedb"命令来手动更新数据库 。

文章插图
优点:查找速度快,且支持所有文件类型;
缺点:不支持新变动的文件检索,需要手动更新数据库;
五、find命令
查找类型:所有文件;
检索范围:指定路径;
find命令是Linux最强大的查找命令,参数多,用法丰富,下面演示一些常用的搜索方法 。
基本用法:$ find <检索路径> <选项> <搜索内容>
可以指定完整的文件名称,也可以使用通配符进行模糊查找 。

文章插图
可以指定文件类型进行查找:
-type d: 查找目录;
-type f: 查找普通文件;
-type l: 查找软链接文件;

文章插图
还有最强大的组合命令用法,比如将find+xargs+grep组合检索返回的文件是否包含指定字符串;find+xargs+cp组合将返回结果拷贝到指定目录下;

文章插图
上面命令中的"-i"与"{}"是配套使用的,"-i"表示将前面find命令的标准输出作为参数传递给"{}";而"{}"作为后面cp命令的第一个参数 。
优点:功能强大,且支持组合命令;
缺点:如果指定的检索路径层级复杂,则检索速度较慢;
【linux 根据文件内容查找文件 linux按文件内容查找】
推荐阅读
- 肾虚不是男人的专利
- 什么手机软件能打开exb文件 什么软件可以打开exb文件
- 为什么有些文件复制不到U盘 为什么复制u盘的文件的时候总是复制不了
- Linux权限解析
- 再也不用百度了!快速构建自己的Linux命令查询系统
- Linux服务器上监控网络带宽的18个常用命令和工具
- 华为 Harmony OS 3.0 新功能曝光:文件中转站、智慧视觉等
- 华为|网盘拜拜!华为首款NAS明天发:文件传输狂飙210MB/s
- 将相和是根据史书什么中的廉颇蔺相如列传改编的?《将相和》是根据什么中的《廉颇蔺相如列传》改编的-
- 姑姑侄女的文案?姑姑侄女的群名叫什么好呢_1
