Linux系统使用——文件搜素命令

来源:互联网 发布:php权限管理教程 编辑:程序博客网 时间:2024/06/05 15:29

1.      文件搜索命令(find、locate、which、grep)

(1)    find(文件搜索 : 少用,占内存)

格式:     find  [搜索范围]    [匹配条件]                (实时查找)

  eg; 

                        i.             $find  /etc -name  init              (在根目录/etc中查找文件init)

-iname      不区分大小写         *    通配任意字符

?       匹配单个字符

                      ii.             $find  / -size  +204800         (在根目录下查找大于100MB的文件)

+n     大于           -n   小于               n    等于

              1数据块 = 521字节 =0.5k       1MB = 1024K

                     iii.             $find  /home -user  shenchao   (在/home下查找所有者为shenchao文件)

-user        按所有者查找               -group           根据所属组查找

                     iv.             $find  /etc -cmin  -5           (在/etc下查找5分钟内被修改属性的文件)

-amin        访问时间(access)      -cmin  文件属性(change)

-mmin       文件内容(modify)

                      v.             $find  /etc -size  +163840  -a -size  -2480        

  (在/etc下查找大于80MB小于100MB的文件)

-a      两个条件同时满足(and)      -o  两个条件满足任意一个即可(or)

-type         根据文件类型查找[ f   文件         d 目录    l 软连接 ]    

                     vi.             $find  /etc -name  init*  -a -type  f

  (在/etc下以init开头的文件)

         -inum      根据i节点查找

                   vii.             $find  /etc -name  inittab  -exec ls  -l  {}  \;

  (在/etc下查找inittab文件并执行ls  -l命令显示其详细信息)

         -exec/ok  命令  {}  \;      对搜索结果执行操作(ok会询问)

(2)    locate(在文件资料库中查找文件(/temp下除外): 搜索快,不占内存)

格式:     locate       文件名

                                     updatedb          更新文件资料库

                            $locate  -i teacher                不区分大小写查找teacher

(3)    which(搜索命令所在目录及别名信息)

格式:     which        命令

                            $which  ls                命令搜素

         whereis与which基本相同,但搜索的同时可以查到帮助文档的路径

(4)    grep(在文件中搜寻字符串匹配的行并输出)

格式:     grep -iv  [指定字串]  [文件]

                              -I     不区分大小写                 -v  排除指定字符串              

-rn   找到列出并显示行号

                            $grep  mysql /root/install.log

                            $grep  -v   ^#/etc/inittab           把以#开头的行去掉

                   Linux以“#”开头都为注释                    “^”以什么开头的

0 0
原创粉丝点击