find
find是linux下查找文件的命令,也是比较常用的命令,功能非常强大,你能想到的它基本都能查询出来。比如,根据文件名称查找,文件权限查找,文件所有者查找,文件的日期,大小等
ex:
find / -name '*tmp*'
find / -name tmp.php
find /etc/ -name temp.php
locate
locate 它的查找效率要比find -name快很多,原因在于在查找的时候,不是搜索文件目录,而是搜索记录目录的索引库,它在/var/lib/mlocate/mlocate.db中。这个数据库包括所有本地文件信息。Linux会根据定时任务,定时更新这个数据库,当然你也可以设置定时更新的周期,还可以手动更新。因此,在使用whersis和locate命令时,有时候刚创建的文件,无法找到,或者已经删除的文件,也查找出来了。这就是数据还没更新造成的。所以,在使用这两命令时,记得先执行更新命令 updatedb。
ex:
updatedb
locate tmp.php
whereis
whereis 和locate 一样,在执行前也需要先执行更新updatedb,所以他的效率也是明显高于find -name的,whereis 可以搜索linux系统中所有的可执行文件即二进制文件
ex:
whereis tmp.php
由于linux下,所有命令都是文件,所以下面两个命令也算是“查找的文件”
which
which 查看系统命令是否存在,并返回系统命令所在的位置。
ex:
which grep
type
type 查看系统中某个命令是否为系统自带的命令。
ex:
type grep