在Linux命令下如果需要快速自己系统所需要处理的文件,可以通过find命令快速进行检索。

如果想在某个路径下查找相应的文件可以执行如下命令:

find path -name filename

# path 文件路径,可以用 / 来表示目录,当然如果能大概确定目录建议缩小目录范围,这样可以检索速度更快;filename 指的是文件检索的文件名。

比如:find / -name mysql.conf

# 系统会从根目录遍历所有文件,然后找到mysql.conf 文件输出找到的结果输出在控制台。

当然也可以通过通配符来模糊指定文件名,比如我想查找系统中后缀是.conf文件文件,可以执行如下命令:

find / -name *.conf

关于find命令的语法格式如下:

find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \

参数说明:

-print(可选参数): find命令将匹配的文件输出到标准输出。

-exec(可选参数): find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } \;,注意{ }和\;之间的空格

-ok(可选参数): 与-exec的作用相同,它会以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确认是否执行。

find部分常用参数:

mount, -xdev : 只检查和指定目录在同一个文件系统下的文件,避免列出其它文件系统中的文件。

-amin n : 在过去 n 分钟内被读取过的文件

-anewer file : 比文件 file 更晚被读取过的文件

-atime n : 在过去n天内被读取过的文件

-cmin n : 在过去 n 分钟内被修改过的文件

-cnewer file :比文件 file 文件时间更新的文件

-ctime n : 在过去n天内被修改过的文件

-empty : 空的文件-gid n or -group name : gid 是 n 或是 group 名称是 name

-ipath p, -path p : 路径名称符合 p 的文件,ipath 会忽略大小写

-name name, -iname name : 文件名称符合 name 的文件。iname 会忽略大小写

-size      n[c]               #查长度为n块[或n字节]的文件

下面列出一些常用的find命令:

find ./ -type f #查找文件

#查找目录

find ./ -type d

#查找名字为file1的文件或目录

find ./ -name file1

#查找名字符合正则表达式的文件,注意前面的‘.*’(查找到的文件带有目录)

find ./ -regex .*so.*\.gz

#查找目录并列出目录下的文件(为找到的每一个目录单独执行ls命令,没有选项-print时文件列表前一行不会显示目录名称)

find ./ -type d -print -exec ls {} \;

#查找目录并列出目录下的文件(为找到的每一个目录单独执行ls命令,执行命令前需要确认)

find ./ -type d -ok ls {} \;

#查找目录并列出目录下的文件(将找到的目录添加到ls命令后一次执行,参数过长时会分多次执行)

find ./ -type d -exec ls {} +

#查找文件名匹配*.c的文件

find ./ -name \*.c

#打印test文件名后,打印test文件的内容

find ./ -name test -print -exec cat {} \;

#不打印test文件名,只打印test文件的内容

find ./ -name test -exec cat {} \;

#查找文件更新日时在距现在时刻二天以内的文件

find ./ -mtime -2

#查找文件更新日时在距现在时刻二天以上的文件

find ./ -mtime +2

#查找文件更新日时在距现在时刻一天以上二天以内的文件

find ./ -mtime 2

#查找文件更新日时在距现在时刻两分钟以内的文件

find ./ -mmin -2

#查找文件更新日时在距现在时刻两分钟以上的文件

find ./ -mmin +2

#查找文件更新日时在距现在时刻一分钟以上两分钟以内的文件

find ./ -mmin 2

#查找文件更新时间比文件abc的内容更新时间新的文件

find ./ -newer abc

#查找文件访问时间比文件abc的内容更新时间新的文件

find ./ -anewer abc

#查找空文件或空目录

find ./ -empty

#查找空文件并删除

find ./ -empty -type f -print -delete

#查找权限为644的文件或目录(需完全符合)

find ./ -perm 664

#查找用户/组权限为读写,其他用户权限为读(其他权限不限)的文件或目录

find ./ -perm -664

#查找用户有写权限或者组用户有写权限的文件或目录

find ./ -perm /220

find ./ -perm /u+w,g+w

find ./ -perm /u=w,g=w

#查找所有者权限有读权限的目录或文件

find ./ -perm -u=r

#查找用户组权限有读权限的目录或文件

find ./ -perm -g=r

#查找其它用户权限有读权限的目录或文件

find ./ -perm -o=r

#查找所有者为lzj的文件或目录

find ./ -user lzj

#查找组名为gname的文件或目录

find ./ -group gname

#查找文件的用户ID不存在的文件

find ./ -nouser

#查找文件的组ID不存在的文件

find ./ -nogroup

#查找有执行权限但没有可读权限的文件

find ./ -executable \! -readable

查找文件size大于10K的文件或目录

find ./ -size +10k

#查找文件size小于10k的文件或目录

find ./ -size -10k

Linux下文件查找命令find笔记相关推荐

  1. linux vim 怎么查找,linux下vim 查找命令

    linux下vim 查找命令: /text --查找text, 按n查找下一个, N查找上一个 ?text --查找text(反向查找), 按n查找下一个, N查找上一个 */# --查找光标当前的单 ...

  2. Linux下的查找命令合集(which/whereis/locate/find)

    Linux 下的查找命令有很多,常用的有which.whereis.locate.find.那么这4个命令之间各自有什么特点,又有什么区别,什么时候该用哪个才最合适呢?方便我们在开发和学习中能更加有效 ...

  3. Linux下文件查找使用详解-羽飞作品

    Linux下文件查找使用详解 (1/3) http://www.boobooke.com/v/bbk1579 Linux下文件查找使用详解 (2/3) http://www.boobooke.com/ ...

  4. Linux 执行文件查找命令 which 详解

    某个文件不知道放在哪里了,通常可以使用下面的一些命令来查找: which  查看可执行文件的位置 whereis 查看文件的位置 locate   配合数据库查看文件位置 find   实际搜寻硬盘查 ...

  5. Linux之文件查找命令

    Linux中常见的文件查询命令有5个 which:在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果: type:用于区分某个命令到底是由shell自带的,还是由shell外部 ...

  6. Linux下的查找命令

    man    find      locate     which    whereis    type man 学习Linux命令,就得会看帮助文档,不然选项太多,根本记不住.常用的帮助文档命令有m ...

  7. (转)linux下find查找命令用法

    1.命令格式: find pathname -options [-print -exec -ok ...] 2.命令功能: 用于在文件树种查找文件,并作出相应的处理 3.命令参数: pathname: ...

  8. Linux下学习DB2命令的笔记

    本笔记接在上一篇 <<Linux下安装DB2 数据库步骤>>  http://blog.csdn.net/sunrier/article/details/7826233 ,学习 ...

  9. linux定位到文件,Linux下文件查找与定位

    Linux下一切皆文件,但是文件由于文件的属性的不同,在查找上可以针对不同的文件做相应的查找以便加快查询速度和减少资源的消耗.注意的是在磁盘中查找是要受到权限控制的,但是在数据库中查找是无权限约束的. ...

最新文章

  1. Python RPi GPIO编程控制
  2. 这里有三位程序员,你能找出来吗?| 每日趣闻
  3. 通过mem函数在MicroPython中访问模块寄存器
  4. 自定义Unity对象生命周期管理集成ADO.NET Entity Framework
  5. matlab把每次循环的结果保存idx,来自Matlab的循环Python
  6. VTK:Animation用法实战
  7. Android 百度地图之全局搜索周边搜索全国搜索城市路线规划(升级版附源码)
  8. mysql把一个字段加到另一张表中_mysql如何能把一个表中的某一字段下的数据加入另一个表中相同字段下,条件是两表中的某字段相同?...
  9. OD反汇编EXE添加一个启动时的消息框
  10. html页面选择附件实现,实现单文件上传,页面局部刷新_html/css_WEB-ITnose
  11. starting Tomcat v8.5 at localhost has encountered a problem
  12. 在Ubuntu18.04上安装Nvidia驱动
  13. 第一届“百度杯”信息安全攻防总决赛 find the flag WP
  14. .net 常识 impersonate user 模拟用户
  15. #怎样获取当前时间和时区_JDK1.8新增日期时间类型
  16. OpenCV-Python官方教程-24-SIFT算法
  17. 6 二十五项反措--防止锅炉事故
  18. 如何正确跟踪广告转化数据,优化广告投放效果?
  19. Excel自动化数据报表制作
  20. Siebel_CRM

热门文章

  1. C++ vector容器类型
  2. Jm86中的encode_one_macroblock注释
  3. C++总结笔记(十)——堆区内存开辟数组和二级指针
  4. 史上超全halcon常见3D算子汇总(一)
  5. oracle 命令日志输出,ORACLE常用命令日志
  6. mysql没有开启binlog能恢复数据吗_神了!一个妹子 rm -rf 把公司整个数据库删没了......
  7. 初学者持续自我提升指南
  8. centos 6.x 64位 运行32位程序
  9. jq关于对象类型的判断
  10. MYSQL在centos上主从配置