查找某个文件是咱们在使用使用linux中很是经常使用的一个命令。linux
linux中有多个查找文件的指令:whereis、find、locate都有相似查找的功能,下面将讲解这些指令之间的区别。shell
功能:定位文件目录数据库
whereis命令不是经过查找磁盘上的全部文件来实现定位的,你能够随便指定一个可执行文件,估计whereis会找不到,这是由于whereis是根据环境变量PATH来查找文件的,而PATH一般设置成存放命令的那些路径,如 /bin、/usr/bin等,所以whereis的用途仅限于定位shell命令所在的位置。spa
功能:查找文件
find命令能够用来从指定的目录开始查找文件,它的速度虽比不上whereis命令,但没有任何限制,并且功能要比whereis命令强。blog
功能:查找文件或目录
除find命令外,locate也是在系统中查找文件的经常使用方法。变量
用locate命令查找的文件和find同样没有任何限制,但执行速度却比find要快很多,其主要缘由在于,locate不是从磁盘中实时查找文件,而是到由updatedb命令产生的信息库中查找相应的文件和目录,这样一来速度固然快了。date
在Linux中,也有至关优秀的搜索系统。一般,find不经常使用,由于速度慢,耗费硬盘空间。一般咱们先使用whereis或者locate来检查,若是 找不到,才用find搜索。为何?由于whereis与locate是使用数据库来搜索数据,因此至关快,并且并无实际搜索硬盘,比较省时。搜索