which   查看可执行文件的位置
whereis   查看文件位置
locate   配合数据库查看文件位置
find   实际搜寻硬盘查询文件名称
 
下面对这些命令及参数进行具体分析
   which  通过 PATH 环境变量到该路径内寻找可执行文件。
   whereis   
          -b  只找二进制文件
          -m  manual 路径下的文件
          -s  source 源文件
          -u  没有说明文档的文件
   locate  是从数据库 /var/lib/slocate 中查找数据,不在硬盘中直接存取数据,但是它有一定的限制性,就是数据库的更新默认是每周执行一次,所以,在数据库更新之前新建的文件会会找不到,必须要在更新数据库之后。
下面重点介绍一下文件查询工具“ find ”命令。
1  -name 按照文件名查找,如:
  find  /etc  -name  *.txt
  find  /  -name  “*.png”
2          -user  按照文件属主查找,如:
find  /  -user  Joy
3          “-o” 和“ -not , 如:
find  /  -name  “.png”  -o  -user  Joy
4          -perm  按照文件权限查找,如:
find  ./  -perm  +444
其中 –perm  mode  表示精确查找
find  /home  -perm  764
      -perm  /mode  表示至少要有一个满足
find  ./  -perm  /444
      -perm  -/mode  表示 3 个都必须满足
find  ./  -perm  -/444
5          -size  按照文件大小查找,如:
find  ./  -size  2M  在根目录下查找文件大小为 2M 的文件
但这里有个特殊情况,例如:
  假设在 /wang 目录下,有三个文件 a,b,c, 文件大小分别为 10k,0M,2M. 这时输入命令:
find  /wang  -size  -1M  /wang 目录下查找大小小于 1M 的文件,这时的输出结果只有 b 文件,因为它这时是以 M 为衡量单位的 ,a=10k 被衡量为 10M
6          -type  按照文件类型查找,其中
         f  一般文件
         d  目录
         l  链接文件
         b  块设备文件
         c  字符设备文件
         p  管道文件
         s  socket 文件
如:
    find  ./  -type  f  ”./” 目录下查找一般文件
7          -atinme, -mtime, -ctime 根据时间查找(默认单位为天),如:
      find  /tmp  -ctime  +10
      find  ./  -newer  a.txt  查找比 a.txt 文件访问时间更短的文件
 
下面介绍一下找到这些文件后怎么对他们操作?
  这样的命令有“ -exec ”和“ -ok , 其中,“ -exec ”是直接执行,“ -ok ”是执行前总询问。如:
  find  -size  +10M  -ok  mv  {}  /tmp/largefiles/  \;