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

    2020-09-01 20:58:45
    查找文件命令查找文件命令find命令find命令的常用选项find命令结合通配符的使用find命令的使用扩展 查找文件命令 find命令 命令 说明 find 在指定目录下查找文件(包括目录) find命令的常用选项 选项...

    查找文件命令

    find命令

    命令 说明
    find 在指定目录下查找文件(包括目录)

    find命令的常用选项

    选项 说明
    -name name,-iname name 文件名称符合 name 的文件,iname 会忽略大小写
    -mount, -xdev 只检查和指定目录在同一个文件系统下的文件,避免列出其他文件系统中的文件
    -amin n 在过去 n 分钟内被读取过
    -anewer file 比文件 file 更晚被读取过的文件
    -atime n 在过去n天内被读取过的文件
    -cmin n 在过去 n 分钟内被修改过
    -ctime n 在过去 n 天内被修改过的文件
    -type c 文件类型是 c 的文件,d:目录,c:字型装置文件,b:区块装置文件,p:具名贮列,f:一般文件,l:符号连结

    find命令结合通配符的使用

    通配符:是一种特殊语句

    通配符 说明
    * 代表0个或多个任意字符
    ? 代表任意一个字符

    find命令的使用

    • 查找当前目录下的所有文本文件
      find . -name '*.txt'
      
      在这里插入图片描述
    • 查看当前目录下的一般文件
      find . -type f
      
      在这里插入图片描述

    扩展

    通配符不仅能结合 find 命令使用,还可以结合其它命令使用, 比如: lsmvcp 等,这里需要注意只有 find 命令使用通配符时需要加上引号。

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

    千次阅读 2021-01-26 15:18:00
    1、最强大的搜索命令:find 查找各种文件的命令 2、在文件资料中查找文件:locate 3、搜索命令所在的目录及别名信息:which 4、搜索命令所在的目录及帮助文档路径:whereis5、在文件中搜寻字符串匹配的行并输出:...

    Linux下文件搜索、查找、查看命令 1、最强大的搜索命令:find 查找各种文件的命令 2、在文件资料中查找文件:locate  3、搜索命令所在的目录及别名信息:which 4、搜索命令所在的目录及帮助文档路径:whereis5、在文件中搜寻字符串匹配的行并输出:grep6、分页显示一个文件或任何输出结果:more7、分页显示一个文件并且可以回头:less8、指定显示前多少行文件内容:head9、指定显示文件后多少行内容:tail10、查看一个文件:cat11、查看文件内容多少字符多少行多少字节:wc12、排序文件内容:sort

    *1、最强大的搜索命令:find 查找各种文件的命令*

    一、根据 文件或目录名称 搜索 find 【搜索目录】【-name或者-iname】【搜索字符】:-name和-iname的区别一个区分大小写,一个不区分大小写 eg:在/etc 目录下搜索名字为init的文件或目录 ①、find /etc -name init (精准搜索,名字必须为 init 才能搜索的到) ②、find /etc -iname init (精准搜索,名字必须为 init或者有字母大写也能搜索的到) ③、find /etc -name init (模糊搜索,以 init 结尾的文件或目录名) ④、find /etc -name init??? (模糊搜索,? 表示单个字符,即搜索到 init___) 二、根据 文件大小 搜索 eg:在根目录下查找大于 100M 的文件 find / -size +204800 这里 +n 表示大于,-n 表示小于,n 表示等于 1 数据块 == 512 字节 0.5KB,也就是1KB等于2数据块 100MB == 102400KB204800数据块 三、根据 所有者和所属组 搜索 ①、在home目录下查询所属组为 root 的文件     find /home -group root ②、在home目录下查询所有者为 root 的文件     find /home -user root 四、根据 时间属性 搜索 find 【路径】【选项】【时间】 选项有下面三种:-amin 访问时间          -cmin 文件属性被更改          -mmin 文件内容被修改 时间:+n,-n,n分别表示超过n分钟,n分钟以内和n分钟 eg:在 /etc 目录下查找5 分钟内被修改过属性的文件和目录     find /etc -cmin -5 五、根据 文件类型或i节点 搜索  **\-type 根据文件类型查找:*  f表示文件,d表示目录,l表示软链接 eg:查找 /home 目录下文件类型是目录的 find /home -type d   *\-inum 根据i节点查找* eg:查找 /tmp 目录下i节点为400342的文件或目录   find /tmp -inum 400342 六、组合条件 搜索     这里有两个参数:   ①、-a 表示两个条件同时满足(and)   ②、-o 表示两个条件满足任意一个即可(or)   范例:查找/etc目录下大于80MB同时小于100MB的文件   find /etc -size +163840 -a -size -204800

    *2、在文件资料中查找文件:locate*

    语法:locate【文件名】 -i 不区分大小写 注意:这里和 find 命令是有区别的,find是全盘检索,而locate 是在文件资料库中进行搜索。所以locate命令的执行要比find命令执行速度快很多。但是这里有个问题,文件资料库是需要不断更新的。我们新创建的文件如果不更新 文件资料库,使用 locate 是查找不到的。 updatedb 手动更新资料库,但是对于/tmp目录下的新建文件,是更新不到文件资料库的,因为/tmp目录不属于文件资料库的收录范围。 eg:locate hcf 在这里插入图片描述

    *3、搜索命令所在的目录及别名信息:which*

    功能描述:搜索命令所在的目录及别名信息  语法:which【命令】  eg:which ls  在这里插入图片描述

    *4、搜索命令所在的目录及帮助文档路径:whereis*

    功能描述:搜索命令所在的目录及帮助文档路径  语法:whereis【命令】  eg:whereis ls  在这里插入图片描述

    *5、在文件中搜寻字符串匹配的行并输出:grep*

    功能描述:在文件中搜寻字符串匹配的行并输出  语法:grep -iv 【指定字符串】【文件】         -i 不区分大小写         -v 排除指定字符串  eg:查找 /root/install.log 文件中包含 mysql 字符串的行,并输出     grep mysql /root/install.log 本搜索工具,根据用户指定的模式,对目标文件逐行进行匹配检查,打印匹配到的行 grep是在文件中搜索匹配的字符串,是在文件中进行内容搜索,这个命令后面用到的比较多

    *6、分页显示一个文件或任何输出结果:more*

    描述: 分页显示一个文件或任何输出结果 用于查看纯文本文件(较长的)格式 格式: more[选项] 文件

    *7、分页显示一个文件并且可以回头:less*

    less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。

    *8、显示前几行文件内容:head*

    head[必要参数][选择参数][文件] 用于显示指定文件开始多少行内容 命令参数: -n 10 显示前10行 -n -10 正常输出但不显示最后的10行 eg:显示new.txt的前两行内容 head -n 2 new.txt head -2 new.txt

    *9、指定显示文件后多少行内容:tail*

    tail[必要参数][选择参数][文件] 用于显示指定文件末尾多少行内容 命令参数: -n 10 显示后面10行 -f 持续刷新显示的内容 eg:显示new.txt的末尾两行内容 tail -n 2 new.txt tail -2 new.txt eg:指定从第二行开始显示 tail -n +2 new.txt

    *10、查看一个文件:cat*

    描述:一次显示整个文件内容 cat 命令 用于查看纯文本文件(较短)  cat [选项] [文件]… 在这里插入图片描述

    *11、查看文件内容多少字符多少行多少字节:wc*

    描述:wc 命令默认情况下会打印换行符数、单词数和字符数。  用法:wc [选项] [文件] 在这里插入图片描述

    *12、排序文件内容:sort*

    用法:sort [选项] [文件]  在这里插入图片描述 eg:sort -b h.txt

    以上就是良许教程网为各位朋友分享的Linux相关知识。

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

    万次阅读 2019-03-21 10:54:03
    在使用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

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

    千次阅读 2018-12-11 19:23:09
    其中find主要是文件级别的查找,grep是字符串级别查找,主要查找文件内容。具体区别: (1)find:是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间等。  (2)grep:是...

     在linux中,查找命令主要有find和grep,以及mlocate/locate

    其中find主要是文件级别的查找,grep是字符串级别查找,主要查找文件内容。具体区别:
    (1)find:是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间等。 
    (2)grep:是根据文件的内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找。

    (3)mlocate/locate 命令用来查找文件或目录,速度快。

    一、find命令

      find 是文件层次的查找(包括子目录,就是对当前路径树查找)
      基本格式:find  path  name

    1、按照文件名查找

    (1)find  /opt  -name  abc.txt   #在/opt目录下查找文件abc.txt
    (2)find  /opt  -name abc.txt #在/opt目录下文件abc.txt
    (3)find  /opt  -name  '*abc*'   #使用通配符*。表示在/opt目录下查找文件名中含有字符串‘abc’的文件
    (4)find  /  -name  'abc*' #表示当前目录下查找文件名开头是字符串‘abc’的文件

    2、可指定文件类型查找

    find / -name "abc*" -type  d   # 查找类型为目录类型
    find / -name "abc*" -type  f   # 查找类型为文件类型
       -type t
                 True if the file is of the specified type.  Possible file types
                 are as follows:
                 b       block special
                 c       character special
                 d       directory      
                 f       regular file   
                 l       symbolic link
                 p       FIFO
                 s       socket

    3、控制目录查找深度  -maxdepth number
         find / -name "abc*" -maxdepth  2  # 查找到二级目录

    4、按照文件特征查找

       时间:
    (1)find / -amin -10   # 查找在系统中最后10分钟访问的文件(access time)

    (2)find / -atime -1    # 查找在系统中最后24小时访问的文件

    (3)find / -mmin -10   # 查找在系统中最后10分钟里修改过的文件(modify time)

    (4)find / -mtime -2 #查找在系统中最后48小时里修改过的文件

     补充:history 10    #表示查看系统最后使用的10条命令

       大小:
    (1)find / -size +100M #查找出大于100M字节的文件(c:字节,w:双字,k:KB,M:MB,G:GB)

    (2)find / -size -100M #查找出小于100M的文件

       其他:
    (1)find / -empty      # 查找为空的文件/夹

    (2)find / -user ljw     #查找属于用户是ljw的文件/夹


    (3)find / -group ljw # 查找group(组)为ljw的文件/夹

    5、使用混合查找方式查找文件

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

    (1) find  /opt  -size  +100M  -and  -mtime  +10 #在/opt目录下查找大于100M并在最后10分钟内修改的文件
           
    (2) find  /  -user  ljw  -or  -user  ljw1 #在/目录下查找多个用户是ljw或者ljw1的文件文件
            
    (3) find  /opt  !  -user  ljw #在/opt目录中查找所有不属于用户ljw的文件

    二、grep 命令

    基本格式:grep 字符串 路径 

    1、主要参数

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

     -v:显示不包含匹配文本的所有行,即反向查找。

     

    2、grep -r "字符串"

    (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’),

    3、grep 命令可以结合其他命令使用,效果也很好。
    例如利用通道 ‘|’ 查找文件
    grep -Rl  'name'  /opt     # 查找文件内容。其中查找的字符串,写不写引号''号都可以。
    递归查找文件,在路径/opt下(包括子目录),找出文件内容中含有字符串'找我'的文件。显示为路径和文件名。

    1. find | grep name   #查找目录

     

     

    查找出当前目录和子目录的文件名中含有name的文件

    即find查找出当前目录和子目录下的文件名,利用管道 | 交给grep过滤出含有name的那几行,间接查找出文件。
    其中find和grep可字行添加所需参数。

     

     

    2. find | xargs grep name    # 查找文件内容
    查找出当前目录和子目录的文件内容中含有name的行。

    与 xargs 结合,可以传递各种选项来调整你的输出,并删除找到的那些文件。

    3. ls | grep name   # 查找文件
    类似find | grep name,只是不能递归查找子目录下的文件名。

    4. rpm -qa | grep  '软件名'    #查找安装的软件

    三、mlocate/locate   文件查找

    对于文件数量庞大的时候,可以使用此方法查找

    mlocate和locate 命令一样,下面就不在写locate了。至于mlocate和locate的关系,最后面会具体说一下。

    mlocate命令其实是“find -name”的另一种写法,但是要比后者快得多。mlocate命令原理:先为整个文件系统创建索引数据库,之后搜索索引,所以速度快。
    Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用mlocate命令查不到最新变动过的文件。为了避免这种情况,可以在使用mlocate之前,先使用updatedb命令,手动更新数据库。

     

     

     

    1、使用命令

    mlocate  abc.txt    #直接搜索文件

    mlocate ~/m    # 搜索用户主目录下,所有以m开头的文件。

    mlocate  /etc/abc    # 搜索etc目录下所有以abc开头的文件。
    mlocate  -ie  abc.txt       #如果 abc.txt已经删除了,使用-e会检查文件是否真实存在,而不必updatedb;-i,忽略大小写

    mlocate  /etc/*abc     #在/etc中查找类似abc的文件。
    注意:对于新增文件应该先updatedb更新数据库,否则就搜不到,当然更新索引时,执行updatedb还是比较快的。

     

     

     

     

    2、准备工作

    先安装mlocate/locate工具命令,创建数据库(创建索引),以及更新数据库。

    yum  install mlocate
    yum  install updatedb
    updatedb    #updatedb更新数据库,即文件库。

    3、整个mlocate工作其实是由四部分组成的: 
    /usr/bin/updatedb   #主要用来更新数据库,可通过crontab自动完成的
    /usr/bin/locate         #查询文件位置的程序(查询时是改程序运行,进行查找),也可能是mlocate。
    /etc/updatedb.conf   #updatedb的配置文件,用来配置数据库中要放入或排除哪些目录和文件等
    /var/lib/mlocate/mlocate.db  #存放文件信息的文件,文件名和对于的目录。

    4、mlocate默认不搜索的文件:
    即写入updatedb的配置文件/etc/updatedb.conf的文件。
    PRUNE_BIND_MOUNTS="yes"

    PRUNEFS="ftpfs devfs mfs shfs sysfs cifs lustre_lite tmpfs usbfs udf"
    PRUNENAMES=".git .bzr .hg .svn"

    PRUNEPATHS="/afs /tmp /var/spool /media"

    第一行 "yes":是否进行限制搜索。
    第二行 排除检索的文件系统类型。
    第三行 排除检索的后缀文件。
    第四行 排除检索的路径,且对路径下的子文件夹也不检索。

    5、关于mlocate和locate
    mlocate有一个近亲:slocate,它安全地(注意前缀字母 s 代表安全)记录了相关的文件权限,以防止非特权用户看到特权文件。此外,还有它们所起源的一个更老的、原始的locate 命令。
    mlocate 与其家族的其他成员(至少包括 slocate)的不同之处在于,在扫描文件系统,每次更新数据库时,mlocate 不需要持续重新扫描所有的文件系统。mlocate 在数据库中保存了时间戳信息,无需重新读取,就能判断目录内容是否改变。所以更新的速度更快,对硬盘的占用也更少。这是mlocate特有的功能。相反,它将其发现的文件(注意前面的m代表合并)与现有的文件列表合并在一起,使其可以借助系统缓存从而性能更高、更轻量级。由于mlocate流行,所以也简称其为 locate。

    mlocate和locate 命令的一个关键组件,名为 updatedb,更新数据库的命令。
    updatedb 通过cron任务定期运行,通常在一天中的安静时间运行。在文件 /etc/cron.daily/mlocate.cron 的内部(该文件的路径及其内容可能因发行版不同)。每天如何触发 “updatedb” 命令。关于mlocate配置文件内容可以参考文章:https://linux.cn/article-9053-1-rel.html

    参考文件:https://linux.cn/article-9053-1-rel.html

     

    展开全文
  • Linux 查找文件命令 总结 whereis locate find
  • linux查找文件命令find

    千次阅读 2017-12-07 10:46:11
    想要在Linux下面,找之前不知道放到哪里的...linux查找文件命令find – 发芽的石头 – 博客频道 – CSDN.NET 去搜: root@bogon:openfire# find / -name '*tomcat*' /usr/local/tomcat1 /usr/local/tomcat1/conf/to
  • linux查找文件命令find怎么用Linux-文件搜索命令find的操作使用方法如下:1、全盘搜索,也可以指定目录搜索。find 搜索目录 -name 目标名字,find / -name file2、这样搜索看到的都是file的完全匹配,区分大小写的,...
  • 使用电脑的时候,经常需要查找文件Linux中,有很多方法可以做到这一点。国外网站LinuxHaxor总结了五条命令,你可以看看自己知道几条。大多数程序员,可能经常使用其中的2到3条,对这5条命令都很熟悉的人应该是不多...
  • 我们经常要在linux查一个文件或目录,大家可能知道find命令,但find查询慢,有时其它命令就非常适合你,这里介绍一下,也放对你有用: 1、which 这个主要是查命令在哪个目录,只能查放在PATH目录的命令。如不在...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 18,220
精华内容 7,288
关键字:

linux查找文件命令

linux 订阅