下面的分析是来自鸟哥的还有网上的,具体看博主命令的截图,或者自己敲命令实践一下。但是实际应用时还是有出入的,博主以后有时间再深究吧!
which:在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。当加上-a参数时返回所有查找结果。
whereis: 只能用于程序名的搜索,而且只会搜索二进制文件(-b),manual路径下的说明文件(-m),源代码文件(-s)以及其他特殊文件(-u)。如果省略参数则返回所有查找信息。Linux系统会将系统内的所有文件都记录在一个数据库文件里面。whereis利用该数据库来查找数据,速度相当快,而且没有实际查询硬盘,比较节省时间。
find:该命令直接查找硬盘,所以花费时间比较长。该命令可以找到你想要的任何文件!
locate:作用相当于find -name,但是比后者要快很多,因为locate命令也是用数据库查找的。但是因为该数据库默认是一天更新一次的,所有使用locate命令有可能找不到最近新建的文件。这时就需要手动更新数据库,命令很简单,直接输入“updatedb”就好了!
type: 这个命令可以区分某个命令是bash自带的(builtin)还是bash外部(其他非bash所提供的)的独立二进制文件提供的。如果一个命令式外部命令,那么使用-p参数,会显示该命令的路径作用相当于which。