Linux下搜索文件命令whereis/which/find/locate
1.whereis
whereis who
whereis
只能搜索二进制文件(-b),man 帮助文件(-m)和源代码文件(-s)
2.locate
所以有时候你刚添加的文件,它可能会找不到,需要手动执行一次 updatedb
命令
(在我们的环境中必须先执行一次该命令)。它可以用来查找指定目录下的不同文件类型,
如查找 /etc 下所有以 sh 开头的文件:
$ locate /etc/sh
注意,它不只是在 /etc 目录下查找,还会自动递归子目录进行查找。
$ locate /usr/share/\*.jpg 注意要添加 *
号前面的反斜杠转义,否则会无法找到
3.which
which
本身是 Shell 内建的一个命令,我们通常使用 which
来确定是否安装了某个指定的软件
,因为它只从 PATH
环境变量指定的路径中去搜索命令:
4.find
应该是这几个命令中最强大的了,它不但可以通过文件类型、
文件名进行查找而且可以根据文件的属性(如文件的时间戳,文件的权限等)进行搜索
$ sudo find /etc/ -name interfaces
注意 find 命令的路径是作为第一个参数的, 基本命令格式为 find [path] [option] [action] 。