ubuntu 查找文件命令-find-which-whereis-locate-type-之间的区别

来源:互联网 发布:2016网络流行词及意思 编辑:程序博客网 时间:2024/05/21 10:49

下面的分析是来自鸟哥的还有网上的,具体看博主命令的截图,或者自己敲命令实践一下。但是实际应用时还是有出入的,博主以后有时间再深究吧!


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。


阅读全文
0 0