Linux查找文件的4种方式介绍

linux查找文件常用的find,whereis, 除此还有locate和which



find



find单词本身就是查找到意思,意思在指定根路径下找目标文件。



文件名查询:



find path -name file



比如testfile文件在/opt/test 目录下,如下查找:


目标文件也可以使用*模糊匹配


修改时间条件查询



参数: -mmin 分钟计时, -mctime 天计时



  • 最近20分钟内修改过的文件



  • 最近一天修改的文件



which



which查找文件与find方式不同,which从环境变量文件(/etc/profile)中的path目录中查找,且which找的都是可执行文件。



命令:which filename


which不能使用*模糊匹配


locate



这是区别以上两种的方式的一种查找文件方式,locate以一个数据库文件为基础查找。



linux系统每天至少自动扫描一次文件,将结果保存到数据库,locate查的是数据库记录。



locate查询比find要快,但最新文件如果在数据库中没有记录,会查询不到,次是需要手动更新(updatedb)



注意:在centos7需要手动安装:



yum install mlocate -y



whereis



与which类似查询可执行文件,whereis查询更多,会查找出相关的man文件