精华内容
下载资源
问答
  • 文件查找

    千次阅读 2016-09-03 08:33:15
    文件查找  文件查找经常用到的俩款软件,locate和find  二者区别 locate:1) 非实时查找;  2) 依赖于索引,而索引构建非常占用资源,索引的创建是在系统空闲时系统自动进行,可以 用updatedb命令

        Linux上的所有资源都以文件的形式存在,如果是手工查找的话,势必会浪费太多的时间,这里推荐俩款大家用于查找的工具。

    文件查找

       文件查找经常用到的俩款软件,locate和find

       二者区别

    locate:1) 非实时查找;
            2) 依赖于索引,而索引构建非常占用资源,索引的创建是在系统空闲时系统自动进行,可以           用updatedb命令更新索引(/var/lib/mlocate/mlocate.db),极度耗费系统资源;
            3) 查找速度快;        
            4) 非精准查找(会匹配到文件路径)。
    find :  1) 实时查找(系统上实时的有就是有没有就是没有);        
            2) 查找速度慢
            3) 精准查找 (查找结果绝对符合查找条件才予显示);
    



      

        1、locate

        2、find

           <1>语法格式

              find [OPTION]... [查找路径] [查找条件] [处理动作]

           <2>查找路径:默认是当前目录,可指定

           <3>查找条件

              根据文件名和inode查找      

                  -name  "文件名称":支持使用globbing:*, ?, [], [^],加引号表示使用globbing

                  -iname "文件名称":不区分字母大小写,支持globbing,加引号表示使用globbing

    [root@localhost /tmp]#ls
    f1  F1  f2
    [root@localhost /tmp]#find -iname "F*"
    ./f1
    ./f2
    ./F1
    

                  -inum n          :按inode号查找

                  -samefile name   :相同inode号的文件

    [root@localhost /tmp]#touch f1
    [root@localhost /tmp]#ln f1 f2
    [root@localhost /tmp]#find -samefile f1
    ./f1
    ./f2
    

                  -links n         :链接数为n的文件

              根据属主、属组查找

                  -user USERNAME  :查找属主为指定用户(UID)的文件

                  -group GRPNAME  : 查找属组为指定组(GID)的文件

                  -uid UserID     :查找属主为指定的UID号的文件

                  -gid GroupID    :查找属组为指定的GID号的文件

                  -nouser         :查找没有属主的文件

                  -nogroup        :查找没有属组的文件

              根据文件类型查找:

                  -type TYPE:

                      f: 普通文件

                      d: 目录文件

                      l: 符号链接文件

                      s:套接字文件

                      b: 块设备文件

                      c: 字符设备文件

                      p: 管道文件

              根据文件大小来查找:

                  -size [+|-]#

                  常用单位:k, M, G

                      # : 7k, (6, 7]

                      -#:-7k,[0,6]

                      +#:+7k,(7,∞)

              根据时间戳:

                  -atime[+|-]#

                  以“天”为单位;

                      # : 7, 7天前访问的

                      +#: +7,一周前访问的

                      -#: -7,一周之内访问的

                      -mtime同理

                      -ctime同理

                  以“分钟”为单位:

                      -amin同理

                      -mmin同理

                      -cmin同理

              根据权限:

                  -perm [/|-]MODE             

                      /MODE:任何一类(u,g,o)对象的权限中只要能一位匹配即可。

                          注:centos6:+MODE

                      -MODE:每一类对象都必须同时拥有指定权限,与关系

                      0    : 表示不关注

              组合条件

                  -a     :与

                  -o     :或

                  not(!) : 非



        

        3、处理动作                  

           -print              :默认的处理动作,显示至屏幕

           -ls                 :类似于对查找到的文件执行“ls -l”命令

    注意:一个命令作用在多个条件时,要加括号,否则命令将默认只作用在相邻的条件上

    [root@localhost ~]#find \( -user root -a -type f \) -ls
    

    当然,下面的写法可以避免这种错误:

    [root@localhost ~]#find -user root -ls -a -type f -ls
    

           -delete             :删除查找到的文件;

           -flsfile            :查找到的所有文件的长格式信息保存至指定文件中

           -ok COMMAND {} \;   :对查找到的每个文件执行由COMMAND指定的命令,并且都会交互式要求用户确认

    [root@localhost /tmp]#ll
    total 12
    -rw-rw-rw-+ 2 root root 0 Aug 16 10:16 f1
    -rw-rw-rw-+ 1 root root 0 Aug 16 10:17 F1
    -rw-rw-rw-+ 2 root root 0 Aug 16 10:16 f2
    [root@localhost /tmp]#find -iname "f*" -ok -delete {} \;
    < -delete ... ./f1 > ?
    

           -exec COMMAND {} \; :对查找到的每个文件直接由COMMAND指定的命令

    [root@localhost /tmp]#ll
    total 28
    -rw-rw-rw-+ 2 zhao zhao 30 Aug 14 16:43 1
    -rw-rw-rw-+ 2 zhao zhao 30 Aug 14 16:43 2
    -rw-rw-rw-+ 1 root root  0 Aug 16 09:51 f1
    -rw-rw-rw-+ 1 root root  0 Aug 16 10:10 test
    drwxrwxrwt+ 3 root root 21 Aug 15 08:32 VMwareDnD
    [root@localhost /tmp]#find -perm -002 -exec mv {} {}.danger \;
    [root@localhost /tmp]#ls
    1.danger  2.danger  f1.danger  test.danger  VMwareDnD.danger
    




    注意:find在查找链接文件时,加/和不加/的区别

    [root@localhost /tmp]#ll
    total 0
    drwxr-xr-x. 2 root root 18 Aug 16 15:59 a
    lrwxrwxrwx. 1 root root  1 Aug 16 15:59 b -> a
    [root@localhost /tmp]#find b/ -perm -113
    b/b.txt
    [root@localhost /tmp]#find b -perm -113
    b
    

    也就是说:如果目录下有文件写成ls /dir==ls /dir/,而如果像链接文件这样,ls /etc/init.d 不等于 ls /etc/init.d/




    注意:排除目录查找

    查找q目录下的所有.txt文件,但是跳过子目录e

    [root@localhost q]# ls
    e  w
    [root@localhost q]# cd e
    [root@localhost e]# ls
    e.txt
    [root@localhost q]# find . -path './e' -a -prune -o -name *.txt -print
    ./w/w.txt
    ./e
    





    课后强化练习

    1、查找/var目录下属主为root,且属组为mail的所有文件  

    [root@localhost /tmp]#find /var -user root -a -group mail
    

    2、查找/var目录下不属于root、lp、gdm的所有文件

    find /var -user root -a -user lp -a -user gdm
    

    3、查找/var目录下最近一周内其内容修改过,同时属主不为root,也不是postfix的文件

    [root@localhost /tmp]#find /var -ctime -7 -a -user root -a -user postfix
    

    4、查找当前系统上没有属主或属组,且最近一个周内曾被访问过的文件

    [root@localhost /tmp]#find / \( -nouser -o -nogroup \) -a -atime -7
    

    5、查找/etc目录下大于1M且类型为普通文件的所有文件

    [root@localhost /tmp]#find /etc -size +1M -a -type f
    

    6、查找/etc目录下所有用户都没有写权限的文件

    [root@localhost /tmp]#find /etc -not -perm /222
    

    7、查找/etc目录下至少有一类用户没有执行权限的文件

    [root@localhost /tmp]#find /etc -not -perm -111
    

    8、查找/etc/init.d目录下,所有用户都有执行权限,且其它用户有写权限的文件

    [root@localhost /tmp]#find /etc/init.d/ -perm -111 -a -perm -002
    

    或者

    [root@localhost /tmp]#find /etc/init.d/ -perm -113
    

    展开全文
  • vi/vim 文件查找与替换

    万次阅读 多人点赞 2019-02-27 16:44:02
    vim有着强大的替换和查找功能,若能进行熟练的运用,可以让工作效率得到一个很大程度的提高. 替换 语法:[addr]s/源字符串/目的字符串/[option] [addr]表示检索范围,如: "1,n":表示从第1行到n行 "%&...

    vim有着强大的替换和查找功能,若能进行熟练的运用,可以让工作效率得到一个很大程度的提高.

    替换

    语法:[addr]s/源字符串/目的字符串/[option]

    [addr]表示检索范围,如:

    "1,n":表示从第1行到n行
    "%":表示整个文件,同"1,$"
    ".,$":表示从当前行到文件尾

    [addr]省略时表示当前行

    s:表示替换操作,其为substitute的缩写

    [option] : 表示操作类型,如:

    g:globe,表示全局替换

    c:confirm,表示进行确认

    p:表示替代结果逐行显示(Ctrl + L恢复屏幕)

    i:ignore,不区分大小写

    [option]省略时仅对每行第一个匹配串进行替换

    如果在源字符串和目的字符串中出现特殊字符,如'/','<','>',','等需要前面加反斜杠\进行转义

     

    常用命令示例:

    #将当前行第一个a替换为b

    :s/a/b/

     

    #将当前行的所有a替换为b

    :s/a/b/g

     

    #将每行第一个a替换为b

    :%s/a/b

     

    #将整个文件的所有a替换为b

    :%s/a/b/g

     

    #将1至3行的第一个a替换为b

    :1,3s/a/b/

     

    #将1至3行的所有a替换为b

    :1,3s/a/b/g

     

    上面是一些常用的替换,但是我们日常碰到的问题不止这么简单,这就要涉及到一些较为高级的替换操作,会涉及到转义,正则表达式相关的知识,下面是一些例子:

    #使用#作为分隔符,此时中间出现的/不会作为分隔符,如:将当前行的字符串"a/"替换为"b/"

    :s#a/#b/#

     

    #找到包含字母a的行并删除

    :g/a/d

     

    #删除所有空行
    :g/^$/d

     

     #多个空格替换为一个空格

    :s/ \+/ /g

     

    #在正则表达式中使用\(和\)符号括起正则表达式,即可在后面使用\1,\2等变量来访问\(和\)中的内容,如下
    将data1 data2修改为data2 data1
    :s/\(\w\+\)\s\+\(\w\+\)/\2\t\1


    后续继续补充!

    展开全文
  • linux 文件查找

    千次阅读 2020-02-24 20:03:23
    文件查找 which :命令查找 find: 文件查找,针对文件名(重点) locate:文件查找,依赖数据库 命令文件查找 which ls (查找ls命令的位置) 任意文件 find 语法: find [path…] [options] [expression] [action] ...

    文件查找
    which :命令查找
    find: 文件查找,针对文件名(重点)
    locate:文件查找,依赖数据库
    命令文件查找
    which ls (查找ls命令的位置)
    任意文件
    find
    语法:
    find [path…] [options] [expression] [action]
    命令 路径 选项 表达式 动作
    按文件名:
    [root@qianfeng ~]# find /etc -name “hosts”
    [root@qianfeng ~]# find /etc -iname “hosts”
    [root@qianfeng ~]# find /etc -iname “hos*”
    -i忽略大小写
    结果输出
    /etc/hosts
    文件查找成功
    按文件大小:
    [root@qianfeng ~]# find /etc -size +5M
    [root@qianfeng ~]# find /etc -size 5M
    [root@qianfeng ~]# find /etc -size -5M
    文件>5M
    文件=5M
    文件<5M
    指定查找的目录深度:
    [root@qianfeng ~]# find / -maxdepth 3 -a -name “ifcfg-en*”
    [root@qianfeng ~]# find / -maxdepth 4 -a -name “ifcfg-en*”
    按文件属主、属组找:
    [root@qianfeng ~]# find /home -user jack //属主是jack的文件
    [root@qianfeng ~]# find /home -group hr //属组是hr组的文件
    按文件类型:
    [root@qianfeng ~]# find /tmp -type f
    [root@qianfeng ~]# find /dev -type b
    f普通文件
    b块设备文件
    按文件权限:
    [root@qianfeng ~]# find . -perm 644 -ls
    -ls 是find的动作之一,精确权限

    展开全文
  • centos文件查找命令

    万次阅读 2017-09-15 11:21:56
    在使用linux时,经常需要进行文件查找。其中查找的命令主要有find和grep。两个命令是有区的。  区别:(1)find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间...

    在使用linux时,经常需要进行文件查找。其中查找的命令主要有find和grep。两个命令是有区的。

      区别:(1)find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间等。 

                   (2)grep是根据文件的内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找。

      一.find命令

        基本格式:find  path expression

        1.按照文件名查找

        (1)find / -name httpd.conf  #在根目录下查找文件httpd.conf,表示在整个硬盘查找
        (2)find /etc -name httpd.conf  #在/etc目录下文件httpd.conf
        (3)find /etc -name '*srm*'  #使用通配符*(0或者任意多个)。表示在/etc目录下查找文件名中含有字符串‘srm’的文件
        (4)find . -name 'srm*'   #表示当前目录下查找文件名开头是字符串‘srm’的文件

        2.按照文件特征查找     

        (1)find / -amin -10   # 查找在系统中最后10分钟访问的文件(access time)
        (2)find / -atime -2   # 查找在系统中最后48小时访问的文件
        (3)find / -empty   # 查找在系统中为空的文件或者文件夹
        (4)find / -group cat   # 查找在系统中属于 group为cat的文件
        (5)find / -mmin -5   # 查找在系统中最后5分钟里修改过的文件(modify time)
        (6)find / -mtime -1   #查找在系统中最后24小时里修改过的文件
        (7)find / -user fred   #查找在系统中属于fred这个用户的文件
        (8)find / -size +10000c  #查找出大于10000000字节的文件(c:字节,w:双字,k:KB,M:MB,G:GB)
        (9)find / -size -1000k   #查找出小于1000KB的文件

        3.使用混合查找方式查找文件

        参数有: !,-and(-a),-or(-o)。

        (1)find /tmp -size +10000c -and -mtime +2   #在/tmp目录下查找大于10000字节并在最后2分钟内修改的文件
             (2)find / -user fred -or -user george   #在/目录下查找用户是fred或者george的文件文件
             (3)find /tmp ! -user panda  #在/tmp目录中查找所有不属于panda用户的文件
            

      二、grep命令

         基本格式:find  expression

         1.主要参数

        [options]主要参数:
        -c:只输出匹配行的计数。
        -i:不区分大小写
        -h:查询多文件时不显示文件名。
        -l:查询多文件时只输出包含匹配字符的文件名。
        -n:显示匹配行及行号。
        -s:不显示不存在或无匹配文本的错误信息。
        -v:显示不包含匹配文本的所有行。

        pattern正则表达式主要参数:
        \: 忽略正则表达式中特殊字符的原有含义。
        ^:匹配正则表达式的开始行。
        $: 匹配正则表达式的结束行。
        \<:从匹配正则表达 式的行开始。
        \>:到匹配正则表达式的行结束。
        [ ]:单个字符,如[A]即A符合要求 。
        [ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。
        .:所有的单个字符。
        * :有字符,长度可以为0。

        2.实例  

      (1)grep 'test' d*  #显示所有以d开头的文件中包含 test的行
      (2)grep ‘test’ aa bb cc    #显示在aa,bb,cc文件中包含test的行
      (3)grep ‘[a-z]\{5\}’ aa   #显示所有包含每行字符串至少有5个连续小写字符的字符串的行
      (4)grep magic /usr/src  #显示/usr/src目录下的文件(不含子目录)包含magic的行
      (5)grep -r magic /usr/src  #显示/usr/src目录下的文件(包含子目录)包含magic的行

      (6)grep -w pattern files :只匹配整个单词,而不是字符串的一部分(如匹配’magic’,而不是’magical’),

      详细使用参见:http://www.cnblogs.com/end/archive/2012/02/21/2360965.html

    展开全文
  • 重复文件查找工具

    千次阅读 2018-12-02 18:27:13
    虽然现在我们的磁盘空间都是够大了,这些重复文件也许不算什么,但是它们会影响到系统的效能,并且我们还是要管理好自己的文件,不然时间久了迟早会出乱子的,今天介绍2款专业的重复文件查找软件。 1、专业重复文件...
  • linux下的find文件查找命令与grep文件内容查找命令  在使用linux时,经常需要进行文件查找。其中查找的命令主要有find和grep。两个命令是有区的。  区别:(1)find命令是根据文件的属性进行查找,如文件名,文件...
  • 查找文件 快捷键 : Ctrl+Shift+N 查找类 快捷键 : Ctrl+Shift+Alt+N 查找文字 Ctrl+f
  • Everyting 文件查找工具

    千次阅读 2017-12-26 18:31:59
    很好用的PC文件查找工具,快速,方便,定位想要查找的文件 http://download.csdn.net/download/ztower/10174492
  • linux文件查找指定时间段的文件

    千次阅读 2017-10-27 22:57:08
    linux文件查找指定时间段的文件
  • 在我们日常跨系统开发和服务部署上,Linux find文件查找命令与grep文件内容查找命令是经常用的,现整理了一下这两种命令的常用方法和参数设置,与大家共享!(也不是最全的,如有补充和建议,欢迎留言).  在使用...
  • 在使用linux时,经常需要进行文件查找。其中查找的命令主要有find和grep。两个命令是有区别的。  区别:(1)find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间...
  • 文件查找命令——find

    千次阅读 2018-10-02 18:09:31
    现在学习一下关于文件查找的命令。 文件查找: locate: 非实时的,模糊匹配,查找是根据全系统文件数据库进行的;系统的数据库每天都会更新; updatedb命令, 手动生成文件数据库; 优势是速度快,了解一下就可以了,...
  • linux小白之路之文件查找find命令

    千次阅读 多人点赞 2020-02-24 19:11:24
    2.find:文件查找,针对文件名 3.locate:文件查找,依赖数据库 一、命令文件查找 如 查找ls命令的位置 which ls 输出结果:/usr/bin/ls 我们可以看出命令所在目录在/usr/bin/下 二、文件查找find 语法:find [path...
  • 文件查找,打包压缩,解压相关分享

    千次阅读 多人点赞 2020-02-24 21:30:48
    一,命令查找which which:命令查找,后面直接跟命令 例:which vim:查找vim命令的位置...二,文件查找find 1,语法 find [path…] [options] [expression] [action] 命令 路径 选项 表达式 动作(第6项中的-ls) 2...
  • Linux命令之查找文件、文件查找-find,grep mark: linux 命令 find grep   find 查找文件 【语法】 find path_name [path_name_tow ...] [options] expression 【命令说明】 find 递归遍历指定...
  • TCL文件查找拆分

    千次阅读 2015-10-13 13:17:55
    TCL文件查找拆分我现在有一个 .res 的文件,这个文件中包括以下两行测试结果: rdly= 3.4405E-10 targ= 2.0084E-07 trig= 2.0050E-07 fdly= 3.1211E-10 targ= 1.0081E-07 trig= 1.0050E-07现在我想...
  • 不解压gz文件查找指定内容

    千次阅读 2018-12-07 17:35:23
    不解压gz文件查找指定内容 zcat app-2018-06-.gz |grep --binary-files=text ‘UserTokenInterceptor_params’ |grep -o 'UserTokenIntceptor_params.’ &gt;app-2018-06.txt 第一次查找出来的结果是带查找字符...
  • 软硬链接 文件查找(find)

    千次阅读 2017-11-13 13:39:09
    .软硬链接 ls -i ##查看文件节点号 ln -s /file /file1 ##软链接(相当于文件快捷方式) ln /file /file1 ##硬链接 (相当于文件的复制,被系统记录了2次...3.文件查找 1.locate filename ##在文件数据库中搜索filename
  • centos简单的文件查找、修改、删除

    千次阅读 2018-01-22 17:47:59
    ps:centos中删除文件查找不知道目录的文件 查找文件 删除文件 编辑文件 拷贝文件 解压文件 重命名文件 查看进程 更新yum 软件、更新系统 查找文件 查找文件:find /(查找范围可填可不填) -name...
  • python 文件查找及内容匹配

    千次阅读 2017-02-28 09:14:59
    需求:程序开发中有大量的接口,但在实际的使用中有一部分是没有使用的...1、find.py 是文件查找及匹配程序 2、input_files.txt是待匹配内容 文件格式如下:   3、result.txt 用于存放查找结果 格式同上 4、t
  • Find则是在当前文件查找,快捷键为Ctrl + F。这两个个功能非常实用。Find in Path的使用: 按快捷键Ctrl + Shift + F或从从菜单Edit-》Find-》Find in Path进入全局查找界面。 如下图所示,在Text to find输入要...
  • 发布H5时,提示文件查找失败

    千次阅读 2020-05-28 14:14:37
    文件查找失败:'uni-view/components/camera' at ..\..\HBuilderX\plugins\uniapp-cli\node_modules\@dcloudio\vue-cli-plugin-uni-optimize\.tmp\components.js:37 产生原因: 调用了不支持该组件的平台 解决...
  • 今天刚好遇到一个需要查找归档日志中的内容,归档的格式是zip,假如是非压缩包文件,可以用grep命令去搜索,例如: grep "被查找的字符串" 文件名 假如是.gz压缩包类或者是zip类,可以用zgrep命令去搜索,...
  • find命令功能非常强大,通常用来在特定的目录... 查找当前目录下所有名为test.sh的文件 find ./ -name '*.sh' 查找当前目录下所有后缀为.sh的文件,单引号可以不加 find ./ -name "[A-Z]*" 查...
  • C语言文件查找

    千次阅读 2018-05-08 13:56:24
    Struct _finddata_t是用来存储文件各种信息的结构体,使用这个结构体要引用的头文件为“ #include &lt;io.h&gt;”它的结构体定义如下: [cpp] view plain copy print?struct&...
  • 文件查找命令find的使用

    万次阅读 2018-04-14 13:25:25
    按照文件名称查找文件 find / -name a.txt 查找/根目录下文件名为a.txt的文件 find /home -name a.txt 查找/home及子目录中文件名为a.txt的文件 find ./ -name *.tar.gz 查找当前目录及子目录中所有后缀为.tar.gz...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 112,625
精华内容 45,050
关键字:

文件查找