find命令的作用是在目录中根据文件名搜索文件
find 列出当前目录及其子目录的所有文件和文件夹的完整路径。
find -name Help.java 在当前目录及其子目录中搜索文件名为Help.java的文件。
find . -name Help.java 在当前目录及其子目录中搜索文件名为Help.java的文件(同上)。
find / -name Help.java 在整个硬盘中搜索文件名为Help.java的文件。
find -perm 755 在当前目录及其子目录中查找指定权限的文件
find -type b 在当前目录及其子目录下查找块设备文件。
find -type d 在当前目录及其子目录下查文件夹。
find -type c 在当前目录及其子目录下查找字符设备文件。
find -type p 在当前目录及其子目录下查找管道文件。
find -type l 在当前目录及其子目录下查找符号链接文件。
find -type f 在当前目录及其子目录下查找普通文件。
find -type d -exec ls -l {} \; 查找当前目录及其子目录下的文件夹,并将查找结果以ls -l的方式展现。
find -type d -ok rm -rf {} \;查找当前目录及其子目录下的文件夹,并将查找结果依次执行rm -rf命令,但是在执行命令前会有确认提示。

find . -type f  \( -name "*.class" -o -name "*.sh"  \)                           查找多个文件,注意\( 和 \) 前后的空格

find . -type f  \( -name "a.class" -o -name "b.sh"  \)                           查找多个文件,注意\( 和 \) 前后的空格

find . -type f  -exec ls -l {}  \;                                                         注意后面的\;

find . -name  "*.log" -exec cp {}  test3 \;

find  /tmp/   -path "/tmp/123"  -prune -o -type f  -print                   查找/tmp下所有文件时,排除指定的文件或者目录,这里是排除掉 /tmp/123

find  /tmp/  \( -path "/tmp/123" -o -path "/tmp/234" -o -path "/tmp/345" \)  -prune -o -type f -print               排除多个文件或目录

find ./cache  ! -name  '*.html'  -type f                                               查找cache目录下不是html的文件

# 在当前目录,排除 out 目录, 且查找不是*.c×  *.h*   *.*o*   *.a   *.xml   *.java   *.d* 类型的所有文件。注意 "./out" 里的这 ./ 很重要
$ find . -path "./out" -prune -o ! -name "*.c*" ! -name "*.h*" ! -name "*.*o*" ! -name "*.a" ! -name "*.xml" ! -name "*.java" ! -name "*.d*" -type f
# 通俗的解释就是: 查找不是 out 目录,或者是文件的东西,但排除文件:*.c× *.h* *.*o* *.a *.xml *.java *.d*
# 在当前目录,排除 out 目录, 且查找不是 *.xml *.java 类型, 但是文件名字为 makefile 或 *.mk  或  *.sh 或 *config 的所有文件。 注意 "./out" 里的这 ./ 很重要
find . -path "./out" -prune -o -iname "makefile" -o -iname "*.mk" -o -iname "*.sh" -o -iname "*config" ! -iname "*.xml" ! -iname "*.java" -type f

查找`2013-08-08`到`2013-09-01`号之间的文件,使用如下命令即可:

find /log/ -name 'production.log-2013*' -newermt '2013-08-08' ! -newermt '2013-09-0

找出 3 天”以前”被改动过的文件:

find /var/log/ -mtime +3 -type f -print

找出 3 天內被改动过的文件:

find /var/log/ -mtime -3 -type f -print

找出当前时间以前的第 3 天被改动过的文件:

find /var/log/ -mtime 3 -type f -print

找出第 3 天被改动过的文件:

find /var/log/ -mtime +2 -mtime -4 -type f -print

查找10分钟之内被修改过的文件:

find . -mmin -10

查找当前文件夹下的文件(不包括目录),要求这些文件在20分钟之内被修改过,且文件名不是 "*.o"   "*.cmd"  这种结尾的文件:

find . -mmin -20 ! -name "*.o" ! -name "*.cmd"  -type f

查看文件中的一段文字,输出到标准输出:

# 打印从第 20 行开始到第 60 行结束的所有行

sed -n '20,60p;61q' file_name                    # 一般显示终端只能显示40行,所以就显示40行就可以了

find in linux的更多相关文章

  1. Linux 驱动开发

    linux驱动开发总结(一) 基础性总结 1, linux驱动一般分为3大类: * 字符设备 * 块设备 * 网络设备 2, 开发环境构建: * 交叉工具链构建 * NFS和tftp服务器安装 3, ...

  2. Linux 内核概述 - Linux Kernel

    Linux 内核学习笔记整理. Unix unix 已有40历史,但计算机科学家仍认为其是现存操作系统中最大和最优秀的系统,它已成为一种传奇的存在,历经时间的考验却依然声名不坠. 1973 年,在用 ...

  3. 死磕内存篇 --- JAVA进程和linux内存间的大小关系

    运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...

  4. NodeJs在Linux下使用的各种问题

    环境:ubuntu16.04 ubuntu中安装NodeJs 通过apt-get命令安装后发现只能使用nodejs,而没有node命令 如果想避免这种情况请看下面连接的这种安装方式: 拓展见:Linu ...

  5. [linux]阿里云主机的免登陆安全SSH配置与思考

    公司服务器使用的第三方云端服务,即阿里云,而本地需要经常去登录到服务器做相应的配置工作,鉴于此,每次登录都要使用密码是比较烦躁的,本着极速思想,我们需要配置我们的免登陆. 一 理论概述 SSH介绍 S ...

  6. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...

  7. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...

  8. SQL Server on Linux 理由浅析

    SQL Server on Linux 理由浅析 今天的爆炸性新闻<SQL Server on Linux>基本上在各大科技媒体上刷屏了 大家看到这个新闻都觉得非常震精,而美股,今天微软开 ...

  9. Microsoft Loves Linux

    微软新任CEO纳德拉提出的“Microsoft Loves Linux”,并且微软宣布.NET框架的开源,近期Microsoft不但宣布了Linux平台的SQL Server,还宣布了Microsof ...

  10. Linux 江湖系列阶段性总结

    引言 我使用 Linux 已经有很多年了,最开始接触 Linux 的时候是从 RedHat 9(没有 Enterprise),中途换过 N 个不同的发行版.多年前,我在 BlogJava 上面分享 J ...

随机推荐

  1. hadoop2 环境的搭建(手动HA)

    1.手工切换ha的环境的搭建(比hadoop1多出来journalnode的配置) namenode:hadoop110和hadoop111 datanode:hadoop112.hadoop113. ...

  2. 概述什么是OSGi框架

    现 在越来越多的Java开发人员在谈论OSGi是有其道理的.在几年前上学的时候我进行了比较多的Eclipse插件开发,当时就亲身感觉到Eclipse 插件体系的灵活与强大,而该体系与OSGi也可谓一脉 ...

  3. Java 7 语法新特性

    一.二进制数字表达方式 原本整数(以60为例)能够用十进制(60).八进制(074).十六进制(0x3c)表示,唯独不能用二进制表示(111100),Java 7 弥补了这点. public clas ...

  4. OOP——UML六种关系

    UML定义的关系主要有:泛化.实现.依赖.关联.聚合.组合,这六种关系紧密程度依次加强,分别看一下 泛化 概念:泛化是一种一般与特殊.一般与具体之间关系的描述,具体描述建立在一般描述的基础之上,并对其 ...

  5. apache开源项目 -- tez

    为了更高效地运行存在依赖关系的作业(比如Pig和Hive产生的MapReduce作业),减少磁盘和网络IO,Hortonworks开发了DAG计 算框架Tez.Tez是从MapReduce计算框架演化 ...

  6. Liunx 配置IDE

    如果你还没装编译环境或自己不确定装没装,不妨先执行 sudo apt-get install build-essential 如果你已经了解一些 vim 的知识,而且想用它来编辑源代码,那么我们不妨装 ...

  7. POJ 1146 ID Codes (UVA146)

    // 求下一个排列// 如果已经是最后一个排列// 就输出 No Successor// stl 或 自己写个 生成排列 我测试了下 两个速率是一样的.只是代码长度不同 /* #include < ...

  8. 查看ORACLE执行计划的几种常用方法

    SQL的执行计划实际代表了目标SQL在Oracle数据库内部的具体执行步骤,作为调优,只有知道了优化器选择的执行计划是否为当前情形下最优的执行计划,才能够知道下一步往什么方向. 执行计划的定义:执行目 ...

  9. Ruby基础数据类型

    #数字分为证书Integer,浮点数Float(对应与其他语言中的double),和复数Complex #整数又分为Fixnum和Bignum,Fixnum和Bignum会互相转换,这些都是ruby自 ...

  10. Oracle 课程八之性能优化之Oracle SQL Trace

    一. SQL_TRACE 当SQL语句出现性能问题时,我们可以用SQL_TRACE来跟踪SQL的执行情况,通过跟踪,我们可以了解一条SQL或者PL/SQL包的运行情况,SQL_TRACE命令会将SQL ...