三金兄的自留地儿

导航

find,locate,whereis,which查找命令

网上搜了一些搜料,整理了出来,不是特别全

find 是直接在硬盘上搜寻,功能强大,你可以用它找到任何你想找的文件。

$ find <指定目录> <指定条件> <指定动作>
实例:

#查找指定目录下的test文件
find ./mydroid/frameworks/ -name "test"

#查找指定目录下以test开头的文件,并且显示它们的详细信息
find ./mydroid/frameworks/ -name "test*" -ls

#查找当前目录下,所有过去10分钟中更新过的普通文件。如果不加-type f参数,则搜索普通文件+特殊文件+目录
find . -type f -mmin -10

#查找/home/XXX/android2.3目录下的build文件夹
find /home/XXX/android/ -name "build" -type d

which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令 。

which grep

显示:
/bin/grep

whereis 命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。由于它是从linux文件数据库(/var/lib/slocate/slocate.db)寻找,所以有可能找到刚刚删除,或者没有发现新建的文件。

whereis grep
whereis -b grep
whereis -m grep
whereis -s grep

依次显示:
grep: /bin/grep /usr/share/man/man1/grep.1.gz
grep: /bin/grep
grep: /usr/share/man/man1/grep.1.gz
grep:


locate:locate命令其实是“find -name”的另一种写法,它和whereis一样都是从数据库(/var/lib/slocate/slocate.db)这样要比find快的多。在使用locate和whereis之前最好能先updatedb,这个需要root的权限呢。

#搜索用户主目录下,所有以m开头的文件,并且忽略大小写。
$ locate -i ~/m



posted on 2011-08-05 00:32  三金兄的自留地儿  阅读(416)  评论(0编辑  收藏  举报