Linux中的几个查找命令

find

可以查找任何类型的文件。
语法格式:

find path -option [-print] [-exec -ok command] {} \;

path:搜索的目录及其子目录,缺省为当前目录
-name:按文件名称查找
-user:按文件的属主查找
-group:按文件的属组查找
-perm:按文件权限查找
-prune:不在当前指定目录查找(除了此目录外进行查找)

locate

locate命令与“find -name”的作用类似,但原理完全不同。
它比find快得多,因为它不搜索具体目录,而是在一个数据库(/var/lib/locatedb)中搜索指定的文件。此数据库含有本地文件的所有信息,这个数据库是linux系统自动创建的,数据库由updatedb程序来更新,updatedb是由cron daemon周期性建立的,默认情况下为每天更新一次,所以用locate命令你搜索不到最新更新的文件,除非你在用locate命令查找文件之前手动的用updatedb命令更新数据库。
也就是说在没有手动更新的前提下,如果删除掉之前存在文件,locate依然可以搜索到它。

whereis

只能查找二进制文件(-b),源代码文件(-s)和说明文件(-m)。
如果省略参数则返回所有的信息。

which

在PATH变量指定的路径中搜索指定的系统命令的位置。

which find
/bin/find

type

type命令主要用于区分一个命令到底是shell自带的还是外部独立的二进制文件提供的。如果是shell自带的则会提示此命令为shell buildin,否则会列出命令的位置。

type cd
cd is a shell builtin

type ssh
ssh is /usr/bin/ssh

原文链接:https://www.cnblogs.com/ginvip/p/6357352.html