查找文件_查找文件路径 - CSDN
  • linux下快速查找文件

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

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

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

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

                      (3)which       查看可执行文件的位置 ,只有设置了环境变量的程序才可以用

                      (4)whereis    寻找特定文件,只能用于查找二进制文件、源代码文件和man手册页

                      (5)locate       配合数据库查看文件位置 ,详情:locate -h查看帮助信息

               

    一.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.实例  

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

    --------------------- 本文来自 xxt_ 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/xxmonstor/article/details/80507769?utm_source=copy

    展开全文
  • 文件查找

    2018-10-11 20:13:35
    文件查找 1.1、which 查找可执行文件的路径 which是通过PATH环境变量到该路径内查找可执行文件,所以基本功能是寻找可执行文件(选项及参数:-a 将所有由PATH目录中可以找到的指令均列出,而不止第一个被找到的指令...

    文件查找

    1.1、which
    查找可执行文件的路径

    which是通过PATH环境变量到该路径内查找可执行文件,所以基本功能是寻找可执行文件(选项及参数:-a
    将所有由PATH目录中可以找到的指令均列出,而不止第一个被找到的指令名称)

    例如:
    1.用which搜寻ifconfig这个指令的完整文件名(which -a ifconfig)
    在这里插入图片描述
    2.用which查找which(which -a which)
    注意:另一个alias为别名
    在这里插入图片描述
    3.请找出cd这个指令的完整文件名(cd是内部命令)
    在这里插入图片描述
    1.2、locate

    whereis 【参数】 文件或目录名称 参数:
    -b :只找二进制文件
    -m:只找在说明文件manual路径下的文件
    -s :只找source源文件
    -u :没有说明文档的文件

    例如:
    1.请用不同的身份找出ifconfig这个文档名

    (注意:用which一般着找不到ifconfig文档名 用whereis可以找到)

    在这里插入图片描述
    2.只找出跟passwd有关的【说明文件】档名
    在这里插入图片描述
    3.只找出二进制文件(passwd)
    在这里插入图片描述
    locate(locate 文件或目录名)
    参数:
    -i:忽略大小写的差异
    -r:后面可接正则表达式的显示方式
    例如:
    1、查找系统中所有与passwd相关的文件
    (locate passwd)

    注意:跟find相比,whereis查找的速度非常快,因为Linux系统会将系统内的所有文件都记录在一个数据库中,当时使用whereis和locate时,会从数据库中查找数据而不是像find命令那样,通过遍历硬盘来查找,效率自然会很高。(数据库并不是实时更新,默认情况下每天更新一次,因此有时候在查找时会找到刚刚被删除的或刚建立的无法找到,原因就是数据库没有被更新)

    1.3find(find 路径 参数)
    参数说明:
    时间查找参数:
    -atime n:将n24小时内存取过的文件列出来
    -ctime n:将n
    24小时内改变,新增的文件或者目录列出来
    -mtime n::将n*24小时内修改过的文件或目录列出来
    -newer file:把比file还要新的文件列出来
    例如:
    1、将过去系统上24小时内有改动过内容的文件列出来(find ./ -mtime 0)
    注意: “.” 表示当前目录 “/” 表示根目录下的所有文件 “0”代表目前时间
    ‘新建一个文件aa并编辑’
    在这里插入图片描述
    2、查找四天内改动过的内容(find ./ -mtime -4)
    在这里插入图片描述
    注意:
    在这里插入图片描述
    在这里插入图片描述
    例如:
    1 查找/home底下属于John的文件
    在这里插入图片描述
    2 搜寻系统中不属于任何人的文件
    在这里插入图片描述
    3 找出档名为passwd这个档案
    在这里插入图片描述
    4 找出/server/scripts/所有脚本文件,即后缀为.sh(find /server/scripts -type -name “.sh”)
    额外操作:
    在这里插入图片描述
    例如:
    1、将目录/root/dir10目录中的以file开头的文件使用ls -l 列出来
    在这里插入图片描述

    注意:
    在这里插入图片描述

    2、找出系统中,大于1MB的档案
    (find / -size +1000k)

    在这里插入图片描述

    上面的exec 也可以用xarg 来代替
    在这里插入图片描述
    在这里插入图片描述

    练习题

    1.查找/var 目录下属主为root 且 属组为mail 的所有文件或目录(find /var -user root -a -group mail -ls)
    在这里插入图片描述
    2、查找/usr目录下不属于root ,bin的所有文件或目录的两种方法
    find /usr -not -user root -a -not -user bin -ls
    find /usr -not ( -user root -o -user bin ) -ls

    注意:\为转义字符
    在括号里用参数-o 括号外用参数-a

    在这里插入图片描述
    3、查找/etc目录下最近一周内内容修改过,且属主不是root 也不是bin用户的文件或目录(find /etc -mtime -7 -a -not -user root -a -not -user bin -ls)(find /etc -mtime -7 -a -not \( -user root -o -user bin ) -ls)
    4、查找当前系统上没有属主或属组,且最近一周内曾被访问过的文件或目录(find / -nouser -a -nogroup -atime -7 -ls)
    在这里插入图片描述
    5、查找/etc目录下大于1M且类型为普通文件的所有文件(find /etc -size +1M -type f -exec ls -l {} ;)
    在这里插入图片描述
    6、查找/etc目录下所有用户都没有写权限的文件(find /etc -not -perm /222 -type f -ls)
    在这里插入图片描述
    7、查找/etc目录下至少有一类用户没有执行权限的文件(find /etc -not -perm /111 -type f -ls)
    在这里插入图片描述
    8、查找/etc/init.d/目录下,所有用户都有执行权限且其他用户有写权限的所有文件(find /etc/init.d/ -perm -113 -type f -ls)
    9、扩展练习:在/opt目录下创建三级文件a1 a2 a3 在a1 a2 a3 目录下分别创建文件aa1 aa2 aa3
    给这三个目录底下的文件设置相同的权限666 并查看
    在这里插入图片描述

    展开全文
  • 查找文件,并按时间排序

    千次阅读 2015-08-10 15:06:50
    例如,查找当前目录下的所有 version.ini文件,并按时间排序,运行命令:复制代码 代码示例: find ./ -name version.ini |xargs ls -lta 查找当前目录下的 .metadata 文件夹,按时间顺序排序,并且将文件夹下面的...

    转载
    例如,查找当前目录下的所有 version.ini文件,并按时间排序,运行命令:

    复制代码 代码示例:
    find ./ -name version.ini |xargs ls -lta
    查找当前目录下的 .metadata 文件夹,按时间顺序排序,并且将文件夹下面的文件列出,运行命令:

    复制代码 代码示例:
    find ./ -name .metadata |xargs ls -lt
    列出所有文件,运行命令:

    复制代码 代码示例:
    find ./ -name .metadata |xargs ls -lta
    注解:
    ls 按时间排序显示指定条数
    ll -t |head -n 10
    用这个命令查看最新创建的文件,还是比较有用的。

    展开全文
  • Linux搜索文件

    千次阅读 2019-04-06 16:51:21
    Linux搜索文件 常用的相关命令包括:whereis, which , find 和locate。 whereis 简单快速 并非从磁盘中直接查找,而是直接从数据库中查询。只支持二进制文件(-b),man帮助文件(-m)和源代码文件(-s)。 locate 快而全 ...

    Linux搜索文件

    常用的相关命令包括:whereis, which , find 和locate。

    whereis 简单快速

    并非从磁盘中直接查找,而是直接从数据库中查询。只支持二进制文件(-b),man帮助文件(-m)和源代码文件(-s)。

    locate 快而全

    命令可以用来递归查找指定目录下的各种文件类型。通过/var/lib/mlocate/mlocate.db查找,该数据库每天自动更新一次,实时触发更新updatedb。例如查找/usr/bin/下所有的python开头的文件。

    locate /usr/bin/python
    

    which 小而精

    which本身是一个Shell內建命令。通常用来确定是否安装了某个文件,因其只从PATH环境变量指定的路径中搜索。

    find 精细搜索

    可以通过文件类型、文件名进行查找,而且可以根据文件的属性(时间戳,权限等)进行搜索。

    例如搜索在/root/anaconda3/下搜索名字为numpy的文件或文件夹:

    sudo find /root/anaconda3 -name numpy
    

    注意find命令的路径是作为第一个参数的,基本命令格式为find [path] [option] [action]

    与时间相关的参数说明:

    • -atime 最后访问时间
    • -ctime 最后修改文件内容的时间
    • -mtime 最后修改文件属性的时间

    -mtime为例举例:

    • -mtime n:n为数字,指在n天前的“一天之内”修改过的文件
    • -mtime +n : 列出n天之前(不包含n天本身)被修改过的文件
    • -mtime -n:列出n天之内(包含n天本身)被修改过的文件
    • -newer file:file为一个已存在的文件,列出比file还要新的文件名

    例子:

    1. 列出home目录中,当天(24小时之内)有改动的文件
    find ~ -mtime 0
    
    1. 列出用户/home目录下比Code文件夹新的文件
    find ~ -newer /home/shiyanlou/Code
    
    1. 搜索/etc/目录下以list结尾的所有文件(可以看到find命令很好的支持正则表达式)
    sudo find /etc/ -name "*.list"
    
    展开全文
  • Linux下文件搜索查找、查看命令

    万次阅读 多人点赞 2018-10-12 15:03:45
    Linux下文件搜索查找、查看命令 1、最强大的搜索命令:find 一、根据 文件或目录名称 搜索 二、根据 文件大小 搜索 三、根据 所有者和所属组 搜索 四、根据 时间属性 搜索 五、根据 文件类型或i节点 搜索 六、组合...
  • linux查找文件命令find

    万次阅读 多人点赞 2008-04-25 16:56:00
    在微软的WINDOWS操作系统中要查找一份文件是相当简单的事情,只要在桌面上点击“开始”-“搜索”中就能按照各种方式在本地硬盘上,局域网络,甚至在INTERNET上查找各种文件,文档。 可是使用Linux的用户就没有那么...
  • linux中的文件搜索命令

    万次阅读 2018-12-16 13:26:19
    是在后台数据库中按文件名搜索(也只能按文件名搜索),搜索速度较快 这个数据库的目录,不同的linux发行版不同,在centos6.10中,这个数据库的目录为:/var/lib/mlocate/mlocate.db 这个数据库默认一天一更新,...
  • Linux find查找文件及文件夹命令

    万次阅读 2018-09-18 10:47:10
    find的主要用来查找文件查找文件的用法我们比较熟悉,也可用它来查找文件夹,用法跟查找文件类似,只要在最后面指明查找文件类型 -type d,如果不指定type类型,会将包含查找内容的文件和文件夹一起输出。...
  • Linux 命令之 find:查找文件

    万次阅读 2019-04-01 21:36:23
    任何位于参数之前的字符串都将被视为欲查找的目录名,其支持按名称查找、按正则表达式查找、按文件大小查找、按文件权限查找等多种查询方式。如果在使用该命令时,不设置任何参数,则find命令将在当前目录下查找子...
  • JAVA查搜索文件内容

    千次阅读 2019-04-28 09:59:32
    上周突然遇到了个要查找历史sql的中是否包含某个字段的问题,Everting虽然可以查找某个后缀的文件,可是并不能搜索文件内容,所以就花费一点功夫自己写一个了。使用起来还是非常方便 1.单文件查找内容 2.单文件夹...
  • cmd中查找文件文件内容

    万次阅读 2018-09-11 22:40:37
    1、在cmd中查找文件,例如在c盘下查找3.txt dir c:\3.txt /s /b /s 显示指定目录和所有子目录中的文件。 /b 使用空格式(没有标题信息或摘要)。 2、查找d盘aaa目录下包含abc的所有文件 findstr /s /n "abc&...
  • ubuntu下的四种搜索文件的方法

    千次阅读 2019-06-11 15:33:46
    记录一下在ubuntu下搜索文件的四个命令,介绍的都是一些最基础的,只是为了方便自己记忆使用。 whereis whereis不是直接从硬盘中查找文件,而是在数据库中,所以速度相对较快。它只能搜索二进制文件(-o),帮助文件(-...
  • windows查找文件内容和文件内容

    千次阅读 2019-03-12 15:40:39
    查找文件: dir d:\*.py /s /b /s 显示指定目录和所有子目录中的文件。 /b 使用空格式(没有标题信息或摘要)。 查找文件内容: findstr /s /n "test" .\* /s 在当前目录和所有子目录中搜索匹配文件。 ...
  • 搜索、查找文件当中的内容,一般最常用的是grep命令,另外还有egrep, vi命令也能搜索文件里面内容 假如是非压缩包文件,可以用grep命令去搜索,例如: grep –i “被查找的字符串” 文件名 假如是.gz压缩包类型的...
  • find 搜索文件或目录 find [命令选项] [路径] [表达式选项] 选项: -empty :查找空白文件或目录。 -group :按组查找。 -name :按文档名称查找。 -iname :按文档名称查找,且不区分大小写。 -mtime :按...
  • linux查找文件路径

    千次阅读 2019-04-19 16:31:12
    1.linux查找可执行文件路径 which命令 例如: 注意:which指令会在环境变量$PATH设置的目录里查找符合条件的文件。 查看环境变量:echo $PATH whereis命令 Linux whereis命令用于查找文件。 该指令会在特定目录中...
  • 文章目录find 在文件搜索字符串。findstr 在文件中寻找字符串。where 显示符合搜索模式的文件位置 在文件搜索指定字符串时,建议使用findstr而非find. 查找文件位置的命令用where. find 在文件搜索字符串。 ...
  • 【Ubuntu】Ubuntu查找文件的命令

    千次阅读 2017-10-19 21:56:54
    findfind命令准确,但速度非常慢,它可以查找任何类型的文件命令格式使用格式如下find [指定目录] [指定条件] [指定动作] [指定目录]: 所要搜索的目录及其所有子目录。默认为当前目录 [指定条件]: 所要搜索文件...
  • 在大型项目开发中,你经常需要在Eclipse左方那庞大的文件树中寻找你需要的文件。 此时,你直接使用Ctrl+Shift+R就可以唤出文件查找窗口。这是根据文件名来找文件,如下图,只要输入你需要寻找的文件名,就能得到相应...
  • Windows CMD中查找文件文件内容

    万次阅读 2019-01-11 16:39:25
    查找文件 用dir命令查找文件 /s 是指列出当前目录包含子目录下的所有文件 /b 是仅列出文件名称,而日期、大小等其它信息则忽略 示例: C:\Users\mt\Desktop&gt;dir 2019* /s /b C:\Users\mt\Desktop\2019-01-...
1 2 3 4 5 ... 20
收藏数 2,316,382
精华内容 926,552
关键字:

查找文件