你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

对 Linux 下文件搜索命令进行一个科普

[复制链接]
gaosmile 发布时间:2020-6-16 21:53
在系统里查找文件,是所有工程师都必备的技能(不管你用的是 Windows 、Linux、还是 MacOS 系统)。对于 Linux 操作系统,单单一个 find 命令就可以完成非常多的搜索工作。
但是,文件搜索命令远不止一个 find 命令,还有很多。本文就对 Linux 下文件搜索命令进行一个科普,让你能够在短时间内找到自己需要的文件。
  1. find  

find 命令应该是最经典的命令了,谈到搜索工具第一个想到的肯定是 find 命令。但是,find 命令非常强大,想要把它的功能都介绍一遍,恐怕要写好几篇文章。
所以,这里就偷个懒,介绍最基本的,根据文件名查找文件的方法。假如我们想搜索当前目录(及其子目录)下所有 .sh 文件,可以这样搜索:
微信图片_20200616215104.jpg
  2. locate  

locate 是另外一个根据文件名来搜索文件的命令。区别于 find 命令,locate 命令无需指定路径,直接搜索即可。
这个命令不是直接去系统的各个角落搜索文件,而是在一个叫 mlocate.db 的数据库下搜索。这个数据库位于 /var/lib/mlocate/mlocate.db ,它包含了系统里所有文件的索引,并且会在每天早上的时候由 cron 工具自动更新一次。
正因为如此,locate 的搜索速度远快于 find 命令,因为它直接在数据库里检索,速度自然更快。
locate 命令在找到文件之后,将直接显示该文件的绝对路径,比如:
微信图片_20200616215108.jpg
但是 locate 命令有个弊端,它无法搜索当天所创建的文件,因为它的数据库一天只在早上更新一次。比如我现在创建一个新文件,locate 没办法搜索到:
微信图片_20200616215111.jpg
为了解决这个问题,我们可以使用 updatedb 命令手动去更新它的数据库:
$ sudo updadb
然后,我们就可以搜索到新文件了。
微信图片_20200616215114.jpg
  3. which  

which 命令主要用来查找可执行文件的位置,它搜索的位置指定在 $PATH 及 $MANPATH 环境变量下的值,默认情况下,which 命令将显示可执行文件的第一个存储位置:
微信图片_20200616215117.jpg
如果某个可执行文件存储在多个位置,可以使用 -a 选项列出所有的位置。
如果你想一次性查找多个文件,可以直接跟在 which 命令后面即可。
微信图片_20200616215121.jpg
  4. whereis  

whereis 命令会在系统默认安装目录(一般是有root权限时默认安装的软件)查找二进制文件、源码、文档中包含给定查询关键词的文件。(默认目录有 /bin, /sbin, /usr/bin,/usr/lib, /usr/local/man等类似路径)。
一般包含以下三部分内容:
  • 二进制文件的路径
  • 二进制文件的源码路径
  • 对应 man 文件的路径

比如我们现在搜索 ls 命令:
微信图片_20200616215124.jpg
我们可以使用 -b 选项来只搜索可执行文件所在位置,使用 -B 选项指定搜索位置,使用 -f选项列出文件的信息。
微信图片_20200616215128.jpg
同样地,我们可以使用 -s 限定只搜索源码路径,使用 -m 搜索 man page 路径,使用 -s 指定搜索源代码文件的路径,使用 -M 指定搜索帮助文件的路径。

收藏 评论1 发布时间:2020-6-16 21:53

举报

1个回答
desk1983 回答时间:2020-6-16 22:29:55

非常好的资料,对初学者很有帮助;
希望楼主多多分享,赠人玫瑰,手有余香,念念不忘,必有回响;.

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版