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

    万次阅读 多人点赞 2018-01-19 11:50:49
    Linux 命令中,find用于在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名,其支持按名称查找、按正则表达式查找、按文件大小查找、按文件权限查找等多种查询方式。如果在使用该命令时,...

    给大家推荐一个比较有趣的公众号,一个陌生人的生活日记
    mulanqiyue

    温馨提示:本教程的 GitHub 地址为「linux-tutorial」,欢迎感兴趣的童鞋StarFork,纠错。

    在 Linux 命令中,find用于在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名,其支持按名称查找、按正则表达式查找、按文件大小查找、按文件权限查找等多种查询方式。如果在使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件,并且将查找到的子目录和文件全部进行显示。

    • 语法:find + 目标目录(路径) + <选项> + 参数

    常用选项列表

    选项含义
    -perm <权限数值>查找符合指定的权限数值的文件或目录
    -type <文件类型>只寻找符合指定的文件类型的文件
    -name <范本样式>指定字符串作为寻找文件或目录的范本样式
    -expty寻找文件大小为 0 Byte 的文件,或目录下没有任何子目录或文件的空目录
    -ls假设find指令的回传值为ture,就将文件或目录名称列出到标准输出
    -maxdepth <目录层级>设置最大目录层级
    -mindepth <目录层级>设置最小目录层级
    -exec <执行指令>假设find指令的回传值为true,就执行该指令
    -ok <执行指令>此参数的效果和指定-exec类似,但在执行指令之前会先询问用户,若回答yY,则放弃执行命令

    示例

    首先,给出演示使用的文件结构:

    0000

    • 示例 1:查找当前目录及其子目录下所有文件和文件夹
    find .
    

    01

    • 示例 2:在/testLinux目录下查找以.txt结尾的文件名
    // 需要书写完整的路径
    find /tmp/cg/testLinux -name "*.txt"
    

    02

    • 示例 3:组合查找文件名以file1开头(与、或、非)file2开头的文件
    /**
     * 组合查找语法:
     * -a        与(取交集)
     * -o        或(取并集)
     * -not      非(同 !)
     * !         非(同 not)
     */
    
    find . -name "file1*" -a -name "file2*"
    find . -name "file1*" -o -name "file2*"
    find . -name "file1*" -not -name "file2*"
    find . -name "file1*" ! -name "file2*"
    

    03

    • 示例 4:根据文件类型进行搜索
    /**
     * 查找当前目录及所有子目录下的普通文件
     */
    
    find . -type f
    

    04

    • 示例 5:基于目录深度进行搜索
    /**
     * 限制最大深度为 3
     */
    
    find . -maxdepth 3 -type f
    
    /**
     * 限制最大深度为 2
     */
    
    find . -maxdepth 2 -type f
    

    05

    • 示例 6:基于文件权限进行搜索
    /**
     * 搜索权限为 777 的文件
     */
    
    find . -type f -perm 777
    
    /**
     * 搜索 .txt 格式且权限不为 777 的文件
     */
    
    find . -type f -name "*.txt" ! -perm 777
    

    06

    • 示例 7:借助-exec命令,将当前目录及子目录下所有.txt格式的文件以File:文件名的形式打印出来
    find . -type f -name "*.txt" -exec printf "File: %s\n" {} \;
    

    07

    • 示例 8:借助-exec命令,将当前目录及子目录下所有 3 天前的.txt格式的文件复制一份到old目录
    find . -type f -mtime +3 -name "*.txt" -exec cp {} old \;
    

    08


    文件类型参数列表

    文件类型参数含义
    f普通文件
    l符号连接
    d目录
    c字符设备
    b块设备
    s套接字
    pFifo

    文件大小单元列表

    文件大小单元含义
    b块(512 字节)
    c字节
    w字(2 字节)
    k千字节
    M兆字节
    G吉字节

    选项列表

    选项含义
    -amin <分钟>查找在指定时间曾被存取过的文件或目录,单位以分钟计算
    -atime <24小时数>查找在指定时间曾被存取过的文件或目录,单位以 24 小时计算
    -cmin <分钟>查找在指定时间之时被更改过的文件或目录
    -ctime <24小时数>查找在指定时间之时被更改的文件或目录,单位以 24 小时计算
    -anewer <参考文件或目录>查找其存取时间较指定文件或目录的存取时间更接近现在的文件或目录
    -cnewer <参考文件或目录>查找其更改时间较指定文件或目录的更改时间更接近现在的文件或目录
    -daystart从本日开始计算时间
    -depth从指定目录下最深层的子目录开始查找
    -expty寻找文件大小为 0 Byte 的文件,或目录下没有任何子目录或文件的空目录
    -exec <执行指令>假设find指令的回传值为true,就执行该指令
    -falsefind指令的回传值皆设为false
    -fls <列表文件>此参数的效果和指定-ls参数类似,但会把结果保存为指定的列表文件
    -follow排除符号连接
    -fprint <列表文件>此参数的效果和指定-print参数类似,但会把结果保存成指定的列表文件
    -fprint0 <列表文件>此参数的效果和指定-print0参数类似,但会把结果保存成指定的列表文件
    -fprintf <列表文件> <输出格式>此参数的效果和指定-printf参数类似,但会把结果保存成指定的列表文件
    -fstype <文件系统类型>只寻找该文件系统类型下的文件或目录
    -gid <群组识别码>查找符合指定群组识别码的文件或目录
    -group <群组名称>查找符合指定群组名称的文件或目录
    -help——help在线帮助
    -name <范本样式>指定字符串作为寻找文件或目录的范本样式
    -iname <范本样式>此参数的效果和指定-name参数类似,但忽略字符大小写的差别
    -ilname <范本样式>此参数的效果和指定-lname参数类似,但忽略字符大小写的差别
    -inum <inode编号>查找符合指定的inode编号的文件或目录
    -path <范本样式>指定字符串作为寻找目录的范本样式
    -ipath <范本样式>此参数的效果和指定-path参数类似,但忽略字符大小写的差别
    -iregex <范本样式>此参数的效果和指定-regexe参数类似,但忽略字符大小写的差别
    -links <连接数目>查找符合指定的硬连接数目的文件或目录
    -ls假设find指令的回传值为ture,就将文件或目录名称列出到标准输出
    -maxdepth <目录层级>设置最大目录层级
    -mindepth <目录层级>设置最小目录层级
    -mmin <分钟>查找在指定时间曾被更改过的文件或目录,单位以分钟计算
    -mount此参数的效果和指定-xdev相同
    -mtime <24小时数>查找在指定时间曾被更改过的文件或目录,单位以 24 小时计算
    -newer <参考文件或目录>查找其更改时间较指定文件或目录的更改时间更接近现在的文件或目录
    -nogroup找出不属于本地主机群组识别码的文件或目录
    -noleaf不去考虑目录至少需拥有两个硬连接存在
    -nouser找出不属于本地主机用户识别码的文件或目录
    -ok <执行指令>此参数的效果和指定-exec类似,但在执行指令之前会先询问用户,若回答yY,则放弃执行命令
    -perm <权限数值>查找符合指定的权限数值的文件或目录
    -print假设find指令的回传值为ture,就将文件或目录名称列出到标准输出,格式为每列一个名称,每个名称前皆有./字符串
    -print0假设find指令的回传值为ture,就将文件或目录名称列出到标准输出,格式为全部的名称皆在同一行
    -printf <输出格式>假设find指令的回传值为ture,就将文件或目录名称列出到标准输出,格式可以自行指定
    -prune不寻找字符串作为寻找文件或目录的范本样式
    -regex <范本样式>指定字符串作为寻找文件或目录的范本样式
    -size <文件大小>查找符合指定的文件大小的文件
    -truefind指令的回传值皆设为true
    -type <文件类型>只寻找符合指定的文件类型的文件
    -uid <用户识别码>查找符合指定的用户识别码的文件或目录
    -used <日数>查找文件或目录被更改之后在指定时间曾被存取过的文件或目录,单位以日计算
    -user <拥有者名称>查找符和指定的拥有者名称的文件或目录
    -version——version显示版本信息
    -xdev将范围局限在先行的文件系统中
    -xtype <文件类型>此参数的效果和指定-type参数类似,差别在于它针对符号连接检查
    展开全文
  • Linux 根据名字搜索文件 find命令

    千次阅读 2021-01-24 14:27:49
    我想搜索/root/soft/ 目录下的 名字叫 capacity-scheduler.xm 文件, 我可以这么写 ...案例 : 查找 Linux下的Tomcat目录,输入命令: sudo find / -name *tomcat* 命令:find 语法:find [搜索范围路径

    我想搜索/root/soft/ 目录下的 名字叫 capacity-scheduler.xm 文件, 我可以这么写

    sudo find /root/soft/ -name *capacity-scheduler.xm*
    

    如果我想从根目录搜索,就直接

    sudo find / -name *capacity-scheduler.xm*
    

    详解介绍

    案例 : 查找 Linux下的Tomcat目录,输入命令:

    sudo find / -name *tomcat*
    

    命令:find
    语法:find [搜索范围路径] -name 【文件名称】(根据文件名查找)
    find [搜索范围路径] -size [(±)文件大小] (根据文件大小查找,大于+ 小于-)
    find [搜索范围路径] -user(文件的所有者)
    find [时间查找] [以天为单位]
    [以天为单位] 1 ctime、atime、mtime
    [以分钟为单位] 2 cmin、amin、mmin
    。。。。。
    描述:查找任何文件或目录(所有)

    如果搜索范围路径不加的话就是全局搜索

    可以使用通配符

    • 代表任意字符
      ? 匹配指定字符,就是单个字符,

    find [搜索范围路径] -size [±文件大小] (根据文件大小查找,大于+小于-)
    注意,对于文件的大小是以数据块为单位。数据块大小是512bit
    形如:如需查找100M的文件,那么就要知道100M为多少block?
    100M = ? block
    1M = 1024K
    100M = 102400K
    1K = 2 block
    100M = 2*102400 block

    find [搜索范围路径] -user(文件的所有者)
    描述:查找隶属于某个用户的文件
    在这里插入图片描述

    find [时间查找] [以天为单位]
    天: ctime、atime、mtime
    分钟:cmin、amin、mmin
    c表示:change 改变文件属性的意思(比如所有者、所属组、权限变更)。
    a表示:access 表示被访问过的意思(比如被查看过等)。
    m表示:modify 更改内容的意思。
    在时间前面添加:-表示之内,+表示之外
    在这里插入图片描述

    find应用的连接符:
    -a (and的意思,逻辑与)
    -o(or的意思,逻辑或)

    在这里插入图片描述
    在这里插入图片描述

    find查找:根据文件类型进行查找:
    -type
    其中:f表示二进制文件,l表示软连接文件 d表示目录

    在这里插入图片描述

    find 寻找 find [PATH] [option] [action] 与时间有关的参数:

    -mtime n : n为数字,意思为在n天之前的“一天内”被更改过的文件;
    -mtime +n : 列出在n天之前(不含n天本身)被更改过的文件名;
    -mtime -n : 列出在n天之内(含n天本身)被更改过的文件名;
    -newer file : 列出比file还要新的文件名

    展开全文
  • 使用*作为通配符,注意!文件名最好用英文单引号括起来。 find / -name '*find_name*'

    使用*作为通配符,注意!文件名最好用英文单引号括起来。

    find / -name '*find_name*'

     

    展开全文
  • find /tmp -name "sess_*" -mtime +1 -exec rm -rf {} \; find:查询命令 /tmp:目标文件所在目录 -name "sess_*":按名称模糊匹配,文件名以sess_开头的所有文件 -mtime +1:一天前,+30代表30天前 ...

    find /tmp -name "sess_*" -mtime +1 -exec rm -rf {} \;

    find:查询命令

    /tmp:目标文件所在目录

    -name "sess_*":按名称模糊匹配,文件名以sess_开头的所有文件

    -mtime +1:一天前,+30代表30天前

    -exec:固定写法

    rm -rf:删除命令

    {} \;  也是固定写法,一对大括号加空格加反斜杠加分号

    PS:

    ls -l|grep "sess_*"| wc -l

    使用这个命令可以根据名称查看剩余文件数量

    转载于:https://my.oschina.net/u/3747332/blog/3050813

    展开全文
  • 最近有台linux系统的服务器,免不了折腾一下文件操作。如何快速查找到对应的文件并执行相应操作呢。我在这里简单的记录一下。find常见命令形式: find pathname -options [-print -exec -ok]-pathname :find命令所...
  • Linux find 命令

    万次阅读 2010-10-13 11:12:00
    find 命令在linux中是很常用到的一个查找命令,它的功能非常地强大。可以结合正则匹配来搜索系统中的指定的内容,以下我就记录一下这个find常用到的一些用法   首先我们来看看find的总体用法 ...
  • linux 系统 find命令

    2019-08-31 12:21:05
    linux 系统文件里查找文件或者文件夹的命令: 其中/root是表示查找的目录 -name表示以名称作为查询的参数(还有-group表示以组维度查询等等,) test表示你要查询的文件夹或者文件的名称 很多find里的具体用法,小...
  • Linux find命令详解

    千次阅读 2019-05-30 11:05:41
    Linux find命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行...
  • linux find的用法

    千次阅读 2015-06-11 11:14:45
    linux中的find命令
  • linux shell学习之find

    2021-01-07 08:55:08
    find命令可以用于查找特定的文件和目录...name选项指定要查找的文件的名称,可以使用具体的名称, 也可以使用正则表达式。 上面的命令会查找用户目录下的所有以.txt结尾的文件。 如果想找到所有以.txt结尾的文件和以.s
  • Linux命令find的35个实例

    万次阅读 2017-04-05 08:39:55
    注:本文内容参考《35 Practical Examples of Linux Find Command》  网址:http://www.tecmint.com/35-practical-examples-of-linux-find-command/  Linux 查找命令是Linux系统中最重要和最常用的命令之一。...
  • linuxfind命令

    万次阅读 多人点赞 2018-11-15 11:48:29
    find /etc/ -name passwd ##查找/etc/下名称中带有passwd的文件 find /etc -maxdepth 1 -name passwd ##查找/etc/下名称中带有passwd的文件,查找一层。 find /etc -name *.conf ##查找/etc/下名称中带有*.conf的...
  • linuxfind指令

    千次阅读 2019-10-14 10:13:17
    find./-typef 查找目录 find./-typed 查找名字为test的文件或目录 find./-nametest 查找名字符合正则表达式的文件,注意前面的‘.*’(查找到的文件带有目录) find./-regex.*so.*\.gz 查找目录并列出目录下的文件(为...
  • linux名称查找文件Linux provides different tools to find files for different attributes. We can find files according to their size, name, modification time location, etc. But one of the most used ...
  • linux find 文件

    千次阅读 2021-03-09 16:08:12
    find命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。...
  • Linux根据进程名称获取pid的方法

    千次阅读 2019-11-21 20:07:44
    以下通过两种方法来根据进程名称获取pid 方法一 最简单的方法是使用 pidof命令 用法:pidof process_name 示例 官网的详细用法如下: NAME pidof -- find the process ID of a running program. ...
  • Linux系统下的Find 命令具有很强大的搜索功能,可以遍历整个文件系统。所以 find 命令很耗资源,有时候甚至会耗费很长时间,因此建议把它放在后台执行。 Find 命令格式如下所示: find pathname -options [-print -...
  • Linux 命令 之 find

    千次阅读 2019-12-25 09:24:21
    Linux中习惯把被操作的对象放在最后,参数等放中间 例:find [参数] [路径] [条件] [处理对象] find(在目录下查找符合条件的文件)  首先,Linux中一切皆文件。...1)根据名称查找  -name ‘a*’...
  • linux find用法整理

    千次阅读 2014-04-04 15:53:54
    linux find 一个不错的网站...find 可以指定查找条件如名称,类型,时间,文件大小,权限和所有者查找,针对多个条件进行与或非的逻辑运算。 我们可以控制find的查找的行为,还可以和其他命令组合使用。 find fin
  • linuxfind命令详解

    万次阅读 2019-01-12 19:23:41
    find命令 :  特点: 查找速度慢,实时查找,精确查找 格式:find [OPTION]... [查找路径] [查找条件] [处理动作] ... -name:后跟文件名称根据文件名字查找。支持使用linux的通配符 -in...
  • Linuxfind命令详解

    千次阅读 2014-07-06 21:48:59
    1. find命令 linuxfind命令用来查找文件,功能很强大, 可以通过时间, 用户组, 文件名, 文件类型, 权限,大小等来查找相应文件。 2. find的用法 通过find --help或者 man find查看介绍。
  • LinuxLinux指令学习之find

    千次阅读 2016-12-30 20:18:19
    find指令是我们在使用Linux系统时比较常用并且十分重要的一条指令。它的指令格式如下: find pathname [-options] [...] *** pathname:你要查找的目录 [- options]:查找方式 […]:查找方式对应的查找条件 ***:...
  • Linux-find命令

    千次阅读 2016-10-09 19:47:08
    find命令用来在指定目录下查找文件。 任何位于参数之前的字符串都将被视为欲查找的目录名。 如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件,并且将查找到的子目录和文件全部...
  • Linux find command

    千次阅读 2007-09-09 00:46:00
    原贴:http://blog.chinaunix.net/u/19782/showart_374813.html  Linux find command
  • pidstat概述pidstat命令用来监控被Linux内核管理的独立任务(进程)。它输出每个受内核管理的任务的相关信息。pidstat命令也可以用来监控特定进程的子进程。间隔参数用于指定每次报告间的时间间隔。它的值为0(或者没有...
  • Linux 命令中,find用于在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名,其支持按名称查找、按正则表达式查找、按文件大小查找、按文件权限查找等多种查询方式。如果在使用该命令时,...
  • Linuxfind命令

    千次阅读 2018-11-14 12:35:02
    find命令用来在指定目录下查找文件。格式为“find [查找路径] 寻找条件 操作“ 任何位于参数之前的字符串都将被视为欲查找的目录名。...在Linux系统中,搜索工作一般都是通过find命令来完成的,它可以使用...
  • 在当前目录下查找包含test_key关键字的文件: find . -name '*' -type f | xargs grep "test_key"| awk -F : '{ print $1 }' | uniq

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 106,838
精华内容 42,735
关键字:

findlinux根据名称

linux 订阅