find 命令用于查找文件系统中的指定文件,其命令格式为:find   要查找的路径   表达式例如:
find . -name 1.txt      在当前目录及其子目录下查找文件 1.txtfind /tmp -name 1.txt   在 /tmp 目
录及其子目录下查找文件 1.txt

find命令的格式:find [-path……] -options [-print -exec -ok]

path:要查找的目录路径。

~ 表示$HOME目录

. 表示当前目录

/ 表示根目

options常用的有下选项:

-name:按照名字查找

-perm:安装权限查找

-prune:不再当前指定的目录下查找

-user:文件属主来查找

-group:文件所属组来查找

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

-nouser:查找无有效属主的文件

-type:按照文件类型查找

exec:对匹配的文件执行该参数所给出的

shell命令。

形式为command {} \;,注意{}与\;之间有 空格
ok:与exec作用相同,

区别在于,在执行命令之前,都会给出 提示,让用户确认是否执行

print:表示将结果输出到标准输出

按名字查找

在当前目录及子目录中,查找大写字母开头的txt文件

find . -name '[A-Z]*.txt' -print   

在/etc及其子目录中,查找host开头的文件

find /etc -name 'host*' -print    

在$HOME目录及其子目录中,查找所有文件   

find ~ -name '*' -print
在当前目录及子目录中,查找不是out开头的txt文件   

find . -name "out*" -prune -o -name "*.txt" -print

按目录查找   

在当前目录除aa之外的子目录内搜索 txt文件   

find . -path "./aa" -prune -o -name "*.txt" -print    

在当前目录及除aa和bb之外的子目录中查找txt文件

find . \( -path "./aa" -o -path "./bb" \) -prune -o -name "*.txt" -print    

在当前目录,不再子目录中,查找txt文件

find . ! -name "." -type d -prune -o -type f -name "*.txt" -print

按权限查找   

在当前目录及子目录中,查找属主具有读写执行,其他具有读执行权限的文件    

find . -perm 755 -print

按类型查找    

在当前目录及子目录下,查找符号链接文件    

find . -type l -print

按属主及属组 
查找属主是www的文件 find / -user www -type f -print   

查找属主被删除的文件find / -nouser -type f -print   

查找属组mysql的文件find / -group mysql -type f -print   

查找用户组被删掉的文件find / -nogroup -type f -print

按时间查找 
查找2天内被更改过的文件find . -mtime -2 -type f -print  
查找2天前被更改过的文件find . -mtime +2 -type f -print  

 
查找一天内被访问的文件find . -atime -1 -type f -print
查找一天前被访问的文件 find . -atime +1 -type f -print   
查找一天内状态被改变的文件  find . -ctime -1 -type f -print   
查找一天前状态被改变的文件 find . -ctime +1 -type f -print   
查找10分钟以前状态被改变的文件 find . -cmin +10 -type f -print

按文件新旧   

查找比aa.txt新的文件 find . -newer "aa.txt" -type f -print   
查找比aa.txt旧的文件 find . ! -newer "aa.txt" -type f -print   
查找比aa.txt新,比bb.txt旧的文件 find . -newer 'aa.txt' ! -newer 'bb.txt' -type f -print

按大小查找   
      查找超过1M的文件       $ find / -size +1M -type f -print   
      查找等于6字节的文件       $ find . -size 6c -print   
      查找小于32k的文件       $ find . -size -32k -print

执行命令   

查找del.txt并删除,删除前提示确认       $ find . -name 'del.txt' -ok rm {} \;   
查找aa.txt 并备份为aa.txt.bak       $ find . -name 'aa.txt' -exec cp {} {}.bak \;

linux find的更多相关文章

  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. iOS开启隐藏文件以及显示文件方法

    显示:defaults write com.apple.finder AppleShowAllFiles -bool true 隐藏:defaults write com.apple.finder A ...

  2. linux 系统负载高 如何检查

    1:load Average 1.1:什么是Load?什么是Load Average?    Load 就是对计算机干活多少的度量(WikiPedia:the system Load is a mea ...

  3. C# 通过反射类动态调用DLL方法

    网上看了很多关于反射的思路和方法,发现这个还算不错 //使用反射方: using System; using System.Collections.Generic; using System.Linq ...

  4. js只保留整数,向上取整,四舍五入,向下取整等函数

    1.丢弃小数部分,保留整数部分 parseInt(5/2) 2.向上取整,有小数就整数部分加1 Math.ceil(5/2) 3.四舍五入. Math.round(5/2) 4.向下取整 Math.f ...

  5. powershell开源新闻及简介

    作者:PowerShll传教士 问:微软的PowerShell脚本语言已经开源了 ? 答:绝对真的!已经! 问:源码在哪? 答:微软.net源码网站.   http://referencesource ...

  6. linux内核学习之二 一个精简内核的分析(基于时间片轮转)

    一   实验过程及效果 1.准备好相关的代码,分别是mymain.c,mypcb.h,myinterrupt.c ,如下图,make make成功: 在qemu创建的虚拟环境下的运行效果:(使用的命令 ...

  7. Oracle存储过程例子:运用了正则表达式、数组等

    代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-- ...

  8. AngularJs的UI组件ui-Bootstrap分享(一)

    最近几个月学习了AngularJs和扩展的UI组件,并在公司小组内做了一次分享交流,感觉很有收获,在此记录下个人的学习心得. 目录: AngularJs的UI组件ui-Bootstrap分享(一) A ...

  9. 启动Mysql服务提示Can’t connect to local MySQL server through socket的解决方法

    启动Mysql服务常会提示下面错误: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/ ...

  10. Windows Server 2003 IIS6.0+PHP5(FastCGI)+MySQL5环境搭建教程

    准备篇 一.环境说明: 操作系统:Windows Server 2003 SP2 32位 PHP版本:php 5.3.14(我用的php 5.3.10安装版) MySQL版本:MySQL5.5.25 ...