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文件