1九、文件搜索命令which,find,locate

1)命令名称:which                   相似的whereis [命令名称]数据库

命令所在路径:/usr/bin/which            同样有相同的功能,可是这个命令同时资源

执行权限:所有                        会显示这个命令的帮助文档的路径文档

功能:显示系统命令所在的目录date

语法:which [命令名称]file

    如:which ls 查询ls所在的目录搜索

        同时也会显示这个命令的别名信息权限

 

2)命令名称:find语法

命令所在路径:/usr/bin/findim

原则:范围越小越好,不然范围太大,浪费系统资源数据

执行权限:所有

功能:查找文件或目录

语法:find [搜索路径或者说是搜索范围] 选项 [搜索关键词]

选项包括:1】-name  根据文件名查找

                       1》-name 关键字*  表示文件名包括关键字,而后*表明

                                 除了关键字以外,能够匹配任意字符

                       2》-name 关键字??? 表示文件名包括关键字,而后后面的每一个问号表示单个                              字符,这是用在肯定文件名总共有多少个字符的状况下用的,如:int???表                                 示总共有6个字符,以int开头

                 2】-size 根据文件大小查找

                     1》-size +多少数据块(block) 表示查找文件大于多少数据块的文件,一数据块                                  =512byte字节

                        如:find / -size  +204800查找大于100MB的文件

                     2》-size –多少数据块 表示查找文件小于多少数据块的文件

                     3》-size 多少数据块 表示查找文件等于多少数据块的文件

                3】-user 根据文件全部者查找

                    如:find /home –user samlee在home下查找全部者为samlee的文件。

                4】根据时间查找 –时间类型 –或者+时间

                                -表示多少时间以内, +则是大于多少时间

                    c—change改变,表示文件的属性被修改过,所谓文件属性就是用ls –l看到的文件                                          的信息,如全部者,所属组等

                    a—access访问

                    m—modify修改,表示文件的内容被修改过

                 1》  天:-ctime ,- atime  ,- mtime

                 2》  分钟:-cmin, -amin , -mmin

                         如:find /etc  –mmin  -120 表示查找2小时以内被访问过的文件

           5】在文件大小的范围内查找

                    1》-a  表示and 逻辑与,如:-size +2048 –a -20480 表示在两个值的范围间查找

                           -o  表示or逻辑或  如:-size -2048  – o  +20480 表示在小于2048,大于20480                             的范围查找

           6】文件类型查找-type 文件类型

           7】知足多个条件,用-a 链接

                      知足多个条件的一个,用-o链接

            8】查找某个文件,并对它执行某些操做

                      Find …….-exec 命令 {} \ ;  固定格式

                             -ok(询问是否执行后面的操做)

                         {}表示find查找到的内容

                         \ 表示转义符,直接执行命令的本义操做,例如Linux中,

                       rm=rm –i 若是直接执行\rm,会直接删除文件,而不会询问,此为本义操做

                               若是只是执行rm(实际上是rm -i),则会询问是否删除

            9】利用i节点查找

                      -inum  i节点数字

                     如:find /etc –inum 16 –exec rm {} \;

                         表示在etc下查找i节点为16的文件,而后删除

                     这个选项一般用于那些文件名有歧义,要直接删除时,系统没法正

                     确识别,如文件名包含空格等

 

3)命令名称:locate

命令英文原意:list files in datebases(数据库)

命令所在路径:/usr/bin/locate

执行权限:所有

功能:寻找文件或目录

语法:locate [搜索关键字]

如:locate file 列出全部跟file相关的文件

缺点:只能检索系统数据库里的文件,不会在硬盘中查找,因此速度很是快,可是若是    

      新建立的文件,数据库没有及时更新,用此命令会查找不到

 因此此时会搭配另外一个命令使用:

   命令名称:updatedb

命令英文原意:update the slocate database

命令所在路径:/bin/updatedb

执行权限:root

功能:创建整个系统目录文件的数据库,至关于每执行一次就会更新一次数据库

语法:updatedb

相关文章
相关标签/搜索