一、目的
本文将介绍linux环境下常用的各种查找命令。这些查找命令包括which、whereis、find、locate。which使用环境变量查找可执行文件的路径;whereis查找可执行文件、源代码、man文件的路径;find命令能够查找文件系统中的任何文件,支持正则表达式查找;locate命令通过之前建立的索引查找文件,所以比find快,但是不适合查找最近新建或者重命名的文件。
本文将选取ubuntu14.04发行版做为描述基础。
二、which命令
which在当前用户的PATH变量中查找,最终显示可执行文件的完整路径。注意:which查找的文件类型是可执行文件,不是所有的文件都可以查找。
语法:which command
例如,使用which ls命令来查找ls可执行文件的完整路径。
三、whereis命令
whereis命令指出给定文件的可执行文件、源代码和man文件的路径。语法:whereis filename
例如,使用whereis ls命令来查找ls文件的可执行文件、源代码和man文件的完整路径。
四、find命令
find命令是linux系统中功能最强大的文件查找工具,find命令根据用户指定的起始查找路径开始查找文件,并使用正则表达式进行模糊匹配。语法:find path expression
path:用户指定的起始查找路径。
expression:正则表达式。
例如,使用find命令查找和ls文件相关的所有文件的完整路径。
五、locate命令
locate命令通过之前建立的索引文件查找文件,所以locate命令查找速度比find要快,但是受限于索引文件,因此不能查找最近新建或重命名的文件。语法:locate patterns
例如,使用locate查找和ls模式相匹配的所有文件的完整路径。