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/  \;