inux命令中which、whereis、locate有什么区别?

locate命令不是实时查找,所以查找的结果不精确,但查找速度很快。

which命令是查找命令是否存在,以及命令的存放位置在哪儿。

whereis命令只能用于搜索程序名,而且只搜索二进制文件

locate

locate命令不是实时查找,所以查找的结果不精确,但查找速度很快。因为它查找的不是目录,而是一个数据库(/var/lib/locatedb),这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。


locate使用格式


locate [指定目录]


例:查找所有包含passwd的文件


#locate passwd


例:查找所有包含passwd的文件,并且只显示前十个


#locate -n 10 passwd


which


which命令是查找命令是否存在,以及命令的存放位置在哪儿。


例:#which ls

whereis


whereis命令只能用于搜索程序名,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。


whereis命令的使用实例:


#whereis vim

猜你喜欢

转载自blog.csdn.net/maybe______/article/details/79798229