Linux下find命令在目录结构中搜索文件,并执行指定的操作。
linux下find命令提供了相当多的查找条件,功能很强大,所以它的选项也很多,其中有许多的选项都值得我们深入的了解学习。

命令格式:find pathname -options [-print -exec -ok ...]
    命令功能:用于在文件树中查找文件,并作出相应的处理(可能访问磁盘)
    命令参数:
        pathname:find命令所查找的目录路径。例如,用.来表示当前目录,用/来表示系统根目录。
        -print:find命令将匹配的文件输出到标准输出。
        -exec:find命令对匹配的文件执行该参数所给出的shell命令。
        -ok:和-exec的作用相同,只是以一种更安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。

下面就进入find命令选项的功能详情:
1、-name    按照文件名查找文件
   文件名选项是find命令最常用的选项,可以单独使用该选项,也可以其他选项一起使用。  可以使用某种文件名模式来匹配文件,注意要用引号将文件名模式引起来。  不管当前路径是什么,可用~作为 'pathname'参数,波浪号~代表了你的$HOME目录。

例如:

想要在当前目录及子目录中查找所有的‘ *.log‘文件,可用: 
    

想要的当前目录及子目录中查找文件名以一个大写字母开头的文件,可用:
    

想要在/etc目录中查找文件名以host开头的文件,可用:
    

想要查找$HOME目录中的文件,可用:
   

2、-perm    按照文件权限查找文件
   按文件权限模式来查找文件的话。最好使用八进制的权限表示法。 
   在当前目录下查找文件权限位为644的文件,可用:
   

3、-prune   忽略某个目录
   使用-prune选项来指出需要忽略的目录。如果同时使用了-depth选项,那么-prune选项就会被find命令忽略。

在file1目录下查找文件,但不希望在file1/file3目录下查找,可以用:

4、-user    按照文件属主来查找文件
   -nouser   查找无有效属主的文件

在$HOME目录中查找文件属主为yangning的文件

为了查找属主帐户不存在的文件,可以使用-nouser选项。
   在/home目录下查找所有的这类文件
   如:find /home -nouser -print
5、-group   按照文件所属的组来查找文件
      -nogroup  查找五有效所属组的文件
   就像user选项一样,针对文件所属于的用户组。

在/apps目录下查找属于gem用户组的文件,可以用: 
   find /apps -group gem -print 
   要查找没有有效所属用户组的所有文件,可以使用nogroup选项。
   从文件系统的根目录处查找这样的文件,可用:
   find / -nogroup -print
6、-type       查找某一类型的文件
   b  --   块设备文件
   d  --   目录
   c  --   字符设备文件
   p  --   管道文件
   l  --   符号链接文件
   f  --   普通文件
   在当前目录下查找所有的目录

在/etc目录下查找所有的符号链接文件

7、-size n: [c]          查找文件长度为n块的文件,带c时文件长度以字节计
   在当前目录下查找文件长度大于1000字节的文件,可用:

在当前目录下查找长度超过10块的文件(一块等于512字节) 
     

8、-depth   查找文件时,首先查找当前目录中的文件,然后在其子目录中查找
   从文件系统的根目录开始,查找一个名为CON.FILE的文件。   
   

它将首先匹配所有的文件然后再进入子目录中查找

9、-newer file1 !file2     查找更改时间比file1新但比file2旧的文件
   查找更改时间比文件file新但比文件file1旧的文件

10、-mtime -n +n   按照更改时间查找文件
        -atime -n +n   按照访问时间查找文件
        -ctime -n +n   按照改变时间查找文件
    用减号-来限定更改时间在距今n日以内的文件,而用加号+来限定更改时间在距今n日以前的文件。
    希望在系统根目录下查找更改时间在10日以内的文件,可以用:
   

以上是我对find指令一些选项的学习总结,难免有疏漏,见谅!!!!

转载于:https://blog.51cto.com/hah11yn/1775387

Linux下find命令详情相关推荐

  1. Linux下addr2line命令用法

    Linux下addr2line命令用于将程序指令地址转换为所对应的函数名.以及函数所在的源文件名和行号.当含有调试信息(-g)的执行程序出现crash时(core dumped),可使用addr2li ...

  2. Linux查看WAS的jvm信息,linux 下使用命令查看jvm信息

    java程序员除了编写业务代码之外,特别是项目上线之后,更需要关注的是系统的性能表现,这个时候就需要了解一下jvm的性能表现了,可以借助于java虚拟机自带的一些分析工具,主要有三个常用的命令. 1. ...

  3. Linux下date命令的修改时间问题

    Linux下date命令的修改时间问题 最近好想学linux,刚好公司也有一台旧的电脑,可是有次公司突然停电了,我用date命令时出问题了,电脑的时间不对了,我后来到网上搜索了好久,也没找到同时修改时 ...

  4. Linux下find命令的使用(命令+案例)

    一.find的作用? •递归式查找 •根据预设的条件递归查找对应的文件 二.find使用方法 – find [目录] [条件1]- -type 类型(f文本文件.d目录.l快捷方式) 代码如下: &l ...

  5. Linux下解决命令未找到的问题

    Linux下解决命令未找到的问题 参考文章: (1)Linux下解决命令未找到的问题 (2)https://www.cnblogs.com/mnote/p/8832806.html 备忘一下.

  6. linux下find命令用法

    一.Linux中find常见用法示例 ·find    path    -option    [    -print ]    [ -exec    -ok    command ]    {} /; ...

  7. linux下sort命令使用详解---linux将文本文件内容加以排序命令

    转载自:http://www.cnblogs.com/hitwtx/archive/2011/12/03/2274592.html linux下sort命令使用详解---linux将文本文件内容加以排 ...

  8. Linux下history命令详解---转载

    Linux下History命令主要用于显示历史指令记录内容, 下达历史纪录中的指令 . >History命令语法: [www.linuxidc.com@linux]# history [n] [ ...

  9. linux下dd命令详解

    linux下dd命令详解    名称: dd 使用权限: 所有使用者dd 这个指令在 manual 里的定义是 convert and copy a file 使用方式: dd [option] 如果 ...

最新文章

  1. 为什么大型互联网都爱用kafka?
  2. dede频道标签channel和频道内容标签channelartlist的调用栏目名的不同方式,如果错误使用标签会发生错误...
  3. 这些全国各地的特色面,你都吃过了吗?
  4. 携程发布2020年财报:四季度营业利润率10% 疫情以来连续两季度盈利
  5. shell脚本spawn_如何使用child_process.spawn将Python / Ruby / PHP Shell脚本与Node.js集成
  6. opencv 阈值分割_用 OpenCV 去除图片中的水印,骚操作!
  7. 基于Keras机器学习库的分类预测
  8. .plist 中各个key的含义
  9. imagej软件分析划痕实验(计算划痕面积及伤口愈合百分比)
  10. 在阿里云容器服务中使用定时任务
  11. 适用于中小型公司代理服务器的IPTABLES脚本
  12. vision里面pt与字号大小对应关系
  13. Git以及GithubDesktop配置ssh访问/下载/上传 详细步骤
  14. 企业如何做好品牌推广工作?
  15. 电信 IPRAN 设备组网方案_ZGQHBJ组网视频监测点组网方案
  16. 听说昨天朋友圈炸开了锅???
  17. 苦难是人生最大的财富
  18. 用HTML和CSS制作一个网页
  19. 如何快速而准确地进行 IP 和端口信息扫描:渗透测试必备技能
  20. Java实现生成csv文件并导入数据

热门文章

  1. What systems can Opalis integrate with?
  2. NIS 服务器的配置
  3. 进击webpack4 (优化篇)
  4. 京东抢购服务高并发实践
  5. 望城区构建摩托车电动车防盗系统 打造物联网平安智慧城市
  6. linux命令:vim
  7. 自定义DateField,带时分秒
  8. 将批注用于类型化 DataSet (摘自MSDN)
  9. C++应用程序性能优化
  10. 通过公历年计算天干地支