find 命令可以根据给定的路劲和表达式查找指定的文件或目录。find 参数选项很多,并且支持正则表达式,功能强大。 和管道结合使用可以实现复杂的功能,是系统管理和普通用户必须掌握的命令。

一、find  命令格式说明

  path find命令查找的目录路径。

  -print find命令将匹配到的文件输出到标准输出。

   -exec find 命令对匹配的文件执行该参数所给出的Shell命令。

   -ok 和 -exec的作用相同,只是更安全,在执行每个命令之前,都会给出提示,让用户来确定是否执行。

二、find命令常用参数说明

  -name   按照文件名查找文件

  -cpio: 对匹配的文件使用 cpio 命令,将这些文件备份到磁带设备中

 -prune 按照文件权限进行查找文件 

  -user 按照文件属主来查找文件

  -group 按照文件所属的组来查找文件

 -mtime -n +n 按照文件更改的时间来查找文件,-n 表示更改时间距现在 n 天以内,+n 表示更改时间距现在 n 天以前

-nogroup 查找无效所属组的文件

-nouser 查找无效属主文件

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

-follow 如果 find 查找的为链接文件,就跟踪至连接所指向的文件

-mount 在查找文件时不跨越文件系统 mount 点

-fstype 查找位于某一类型文件系统中的文件

-depth 在查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找

-size n 查找文件长度为 n 块的文件,带有 c 时表示文件长度以字节计

-type 查找某一类型的文件

-amin n 查找系统中最后 n 分钟访问的文件

-atime n 查找系统中最后 n*24 小时访问的文件

-cmin n 查找系统中最后 n 分钟被改变文件状态的文件

-ctime n  查找系统中最后 n*24 小时被改变文件状态的文件

-mmin n 查找系统中最后 n 分钟被改变文件数据的文件

-mtime n  查找系统中最后 n*24 小时被改变文件数据的文件

-empty 查找系统中空白的文件或目录,或目录中没有子目录的文件夹

-false 查找系统中总是错误的文件

-gid n 查找系统中文件数字组ID为 n 的文件

-daystart 测试系统中从今天开始 24 小时以内的文件,用法类似于 -amin

-help 显示命令摘要(帮助)

-maxdepth levels 在某个层次目录中按照递减方法查找

三、find基本用法

find 如不加任何参数,表示查找当前路径下的所有文件和目录

find  -print    将结果打印到标准输出

find /data/log   指定路劲查找

  find   /   -name  "abc.txt"   在系统中查找 abc.txt 如果执行完毕没有找到,则说明系统中不存在该文件

find 还支持正则表达式查找

find /data/logs -mame "*.log"  -type f -printf    查找符合指定字符串的文件

  find . -name "[0-9]" -type f   查找以数字开头的文件

  find / -mtime -1 |head  查找系统内最近24小时修改过的文件

find / -mmin  -15|head   查找系统内最近15 分钟修改过的文件

find 使用 type 选项可以查找特定的文件类型,常见类型如下

  b 块设备文件

  d 目录

  c 字符设备文件

  p 管道文件

  l 符号链接文件

  f 普通文件

  find  . -type d  查找当前路径中的所有目录

  find  . -type f  查找当前路径中的所有文件

find  . -type l   查找当前路径中的所有符号链接文件

  更多实例将在使用中不断补充.....

四、xargs命令

  find命令可以把匹配到的文件传递给 xargs 命令执行,在使用 find 命令的 -exec 选项处理匹配到的文件时,find将所有匹配到的文件一起传递给 exec 执行。由于有些系统对能够传递给 exec 的命令长度有限制,这样会引起溢出错误。这时可以使用 xargs 命令。

  find / type f -print | xargs file    查找系统中的每一个普通文件,并用 file 命令来测试它们分别属于哪一类文件。

  find . -type f -name "\.log" -print | xargs rm  查找当前目录下的 .log 文件,并删除 。

  find . -type f -exec ls -l {} \;  用 ls -l 列出所有匹配到的文件。

  find logs  -type f -mtime +5 -exec rm {} \;  查找 log 中更改时间在 5 天前的文件并删除。

  find logs -type f -ok rm {} \;  查找 log中的所有普通文件并在删除前确认。  

  find . -type f -name "\.log" -print | gerp "node"     查找当前目录下的 .log 文件,并从查找结果中筛选出带有 node 字符串的文件 。

  

Linux命令(七)查找文件或目录 find的更多相关文章

  1. Linux 命令大全 - 管理文件和目录的命令

    1.pwd 显示当前目录 该命令的英文解释为print working directory(打印工作目录).输入pwd命令,Linux会输出当前目录. 2.cd 命令用来改变所在目录 cd / 转到根 ...

  2. Linux 命令 - cp: 拷贝文件和目录

    命令格式 cp [OPTION]... [-T] SOURCE DEST cp [OPTION]... SOURCE... DIRECTORY cp [OPTION]... -t DIRECTORY ...

  3. linux命令学习 查找文件和文件夹

    1: 查找根目录下查找文件夹名称叫XXXX的目录地址 find / -name XXXX -d 2: 查找/var/www/目录下叫index.php的文件 find /var/www/ -name ...

  4. Linux 命令 - rm: 删除文件和目录

    命令格式 rm [OPTION]... FILE... 命令参数 -f, --force 强制删除,忽略不存在的文件,不会提示. -i, --interactive 没次删除文件时,提示用户确认. - ...

  5. Linux命令: 查找文件中的字符串

    ①cat filename | grep 'string' ②编辑模式查找,/string, 依次敲入下面的命令 vim filename e i ESC /string 从光标位置开始往后查找第一个 ...

  6. linux查找文件或目录命令

    inux查找文件或目录命令,前提:知道文件或者目录的具体名字,例如:sphinx.conf find 查找  find / -name dirname  查找目录 find -name filenam ...

  7. Linux命令进阶篇-文件查看与查找

    上一篇的博客对于Linux如何在不同目录下跳转和查看目录下内容做出了总结,主要靠cd和ls,很常见也很实用.但是你看到目录下面那么多不同花花绿绿的文件,心里是不是痒痒,是不是想进去一探究竟,有办法! ...

  8. Linux常用命令01(文件和目录)

    目标 查看目录内容 ls 切换目录 cd 创建和删除文件 touch rm mkdir 拷贝和移动文件 cp mv 查看文件内容 cat more grep 其他 echo 重定向 > 和 &g ...

  9. Linux命令(20)linux服务器之间复制文件和目录

    linux的scp命令: scp就是secure copy的简写,用于在linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器. 有时我们需要获得远程服务器上 ...

  10. 在linux服务器之间复制文件和目录命令scp

    scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当你服务器 ...

随机推荐

  1. M100(3) 无线数传

    本文记录了无线数传配合地面Windos qt写的飞机控制SDK软件的使用过程 使用了两种类型无线数传 遇到问题 1 界面卡死问题 1.1 数传问题 问题描述: 使用非官方数传,点击active按键和一 ...

  2. docker swarm英文文档学习-2-关键概念

    参考https://docs.docker.com/engine/swarm/key-concepts/ Swarm mode key concepts集群模式关键概念 本主题介绍Docker Eng ...

  3. Dubbo -- 系统学习 笔记 -- 目录

    用户指南 入门 背景 需求 架构 用法 快速启动 服务提供者 服务消费者 依赖 必需依赖 缺省依赖 可选依赖 成熟度 功能成熟度 策略成熟度 配置 Xml配置 属性配置 注解配置 API配置 示例 启 ...

  4. create_buffer_tree example

    假设这样一种情况: 绕线完修完timing 后,designer 修改了netlist,给了eco.v,其中改动了 clock tree 的一个分支,导致这个分支上的buffer 都没有了,如下图 一 ...

  5. Javascript 及 CSS3 实现进度条效果

    Javascript 及 CSS3 实现进度条效果 一:css2 属性clip实现网页进度条:  在实现之前,我们先来介绍一下clip属性,因为这个属性在css2.1中很少使用到,所以我们有必要来了解 ...

  6. Android 配置从GitHub上下载下来的不太规则的源代码库,并保证程序正常运行

    用过github的朋友一定会发现,我们在github上下载下来的源代码(例子和库),放到eclipse中并不是总能正常运行的,它有可能会出现这样或者那样的错误,例如:找不到jar包,配置文件错误,R文 ...

  7. nrf52832 连接参数更新过程

    ble 连接参数更新过程如下: 一般分三个过程 一 .主机发起连接(带有一个连接参数,一般都是 7.5ms) 二.主机更新连接参数 (举例:NRF CONNECT 安卓app软件 45ms). 三.从 ...

  8. Debuggex – 超好用的正则表达式可视化调试工具

    正则表达式通常被用来检索或替换符合某个模式的文本内容,编写正则是开发人员的必备技能.简单的正则表达式一下就能看懂含义,但是复杂的正则理解起来就很困难了.有了这款可视化的正则调试工具,以后编写正则表达式 ...

  9. 20155323刘威良《网络对抗》Exp9 Web安全基础

    20155323刘威良<网络对抗>Exp9 Web安全基础 实践目的 理解常用网络攻击技术的基本原理. 实践内容 Webgoat实践下相关实验. 实践过程 开启WebGoat WebGoa ...

  10. POJ 1328&&2109&&2586

    这次是贪心(水笔贪心)专题. 先看1328,一道经典的导弹拦截(或者是打击?不懂背景). 大意是说在一个坐标系中有一些点(或是导弹),你要在x轴上建一些东西,它们可以拦截半径为d的圆范围中的点.问最少 ...