linux下最强大的搜索命令为”find“。它的格式为”find <指定目录> <指定条件> <指定动作>“;比如使用find命令搜索在根目录下的所有interfaces文件所在位置,命令格式为”find / -name 'interfaces'“
使用locate搜索linux系统中的文件,它比find命令快。因为它查询的是数据库(/var/lib/locatedb),数据库包含本地所有的文件信息。使用locate命令在根目录下搜索interfaces文件的命令为”locate interfaces“
使用”whereis“命令可以搜索linux系统中的所有可执行文件即二进制文件。使用whereis命令搜索grep二进制文件的命令为”whereis grep“。
Linux查找文件常用的命令有find、whereis、locate和which。
find
单词本身就是查找的意思,意思在指定根路径下找目标文件。
文件名查询:find path -name file
目标文件也可以使用*模糊查询,如:find / -name test*
which
which查找文件的方式与find略有不同,which从环境变量文件(/etc/profile)中的path目录中查找,且which找的都是可执行文件。
命令:which filename
PS:which不能使用*模糊查询
locate
这是区别以上两种的方式的一种查找文件方式,locate以一个数据库文件为基础查找。
Linux系统每天至少自动扫描一次文件,将结果保存到数据库,locate查的是数据库记录。
locate查询比find要快,但最新文件如果在数据库中没有记录,会查询不到,次是需要手动更新(updatedb)
whereis
与which类似查询可执行文件,whereis查询更多,会查找出相关的man文件