find文件查找
一、locate
locate基于数据库索引来查找文件,数据库在开机时一段时间对更新,不会实时更新,数据库存放在(/var/lib/mlocate/mlocate.db),可以用updatedb来手动更新数据库。
优缺点:
- 查找速度快
- 模糊查找
- 非实时查找
- 搜索的是文件的全路径
- 只搜索用户具备读权限和执行权限的目录
locate KEYWORD
选项:
-i:不区分关键字大小写
-n #:打印匹配到的前#行
-r:使用正则表达式
二、find
find查找会实时遍历磁盘,对服务器性能会有很大影响,使用时应该注意服务器的负载
优缺点:
- 查找速度慢,影响性能
- 精确查找
- 实时查找
- 只搜索用户具备读权限和执行权限的目录
find 【查找路径范围】【选项】【查找条件】【处理操作】
查找路径,默认为当前工作路径
1、查找条件
可以指定查找文件的文件名、大小、类型、权限等等指定条件
- --maxdepth #:最大搜索目录深度
- --mindepth #:最小搜索目录深度
- -name:指定文件名
- -iname:忽略文件名大小写
- -inum #:指定inode号
- -samefile FILE:指定和另一个文件相同的inode号,查找一个文件的硬链接
- -links #:指定查找有#个链接数的文件
- -regex "PATTERN":使用正则表达式匹配
- -user USERNAME:查找指定所属者的文件
- -group GROUPNAME:查找指定所属组的文件
- -uid UID:查找指定UID的文件
- -gid GID:查找指定GID的文件
- -nouser:查找没有所属者的文件
- -nogroup:查找没有所属组的文件
- -type:根据文件类型查找
- f:普通文件
- d:目录
- l:符号链接
- s:套接字文件
- b:快文件
- c:字符文件
- p:管道文件
- -empty:查找空文件
- -size:按文件大小查找(c,k,M,G)
- #:(#-1,#]
- -#:[0,#-1]
- +#:(#,+∞)
- -atime:按文件各时间查找(天)
- #:[#,#+1)
- +#:[#+1,∞]
- -#:[0,#)
- -mtime
- -ctime
- -amin:按文件各时间查找(分钟)
- -mmin
- -cmin
- -perm 权限匹配
- MODE 精确匹配
- /MODE ugo是或者的关系
- -MODE ugo是并且的关系,包含关系
- 组合添加查找
- -a:并且
- -o:或者
- -not|!:不是
2、处理操作
对匹配到的文件做相应的操作,默认操作为输出到终端
-print:默认处理,打印到终端
-ls:以长格式列出文件
-delete:删除文件,不提示!
-fls NEWFILE:将长格式的文件列表保存到NEWFILE == -ls >NEWFILE
-ok CMD {} \;:指定处理动作,提示
-exec CMD {} \;:指定处理动作,不提示!
记录于2018.4.12 11:57
find文件查找的更多相关文章
- Linux文件查找.md
Linux 文件查找 在Linux系统的查找相关的命令: which 查看可执行文件的位置 whereis 查看文件的位置 locate 配合数据库查看文件位置 find 实际搜寻硬盘查询文件名称 w ...
- myeclipse学习总结三(MyEclipse文件查找技巧)
一.查找文件 使用快捷键[ctrl+shift+R]弹出弹出文件查找框,如下图所示: 二.查找包含某个字符串的文件 使用快捷键[ctrl+H]在弹出对话框中选File Search选项,然后在第一个文 ...
- 自己动手写文件查找,字符串查找,查询jar包等工具
文件查找——搜索当前目录下的文件 知道大概的文件名称,使用 findf FileName findf.py import argparse, re, os from os.path import jo ...
- Linux 执行文件查找命令 which 详解
某个文件不知道放在哪里了,通常可以使用下面的一些命令来查找: which 查看可执行文件的位置 whereis 查看文件的位置 locate 配合数据库查看文件位置 find 实际搜寻硬盘查 ...
- Node.js入门:文件查找机制
文件查找流程图 从文件模块缓存中加载 尽管原生模块与文件模块的优先级不同,但是都不会优先于从文件模块的缓存中加载已经存在的模块. 从原生模块加载 原生模块的优先级仅次于文件模块缓存的优 ...
- <实训|第十一天>学习一下linux中的进程,文件查找,文件压缩与IO重定向
[root@localhost~]#序言 在今后的工作中,运维工程师每天的例行事务就是使用free -m,top,uptime,df -h...每天都要检查一下服务器,看看是否出现异常.那么今天我们就 ...
- linux笔记八---------文件查找
1.find文件查找指令 > find 目录 参数 参数值,参数 参数值..... > find / -name passwd //从系统根目录开始递归查找name=p ...
- linux下的find文件查找命令与grep文件内容查找命令
在使用linux时,经常需要进行文件查找.其中查找的命令主要有find和grep.两个命令是有区的. 区别:(1)find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访 ...
- MyEclipse使用总结——MyEclipse文件查找技巧 ctrl+shift+R ctrl+H
一.查找文件 使用快捷键[ctrl+shift+R]弹出弹出文件查找框,如下图所示: 二.查找包含某个字符串的文件 使用快捷键[ctrl+H]在弹出对话框中选File Search选项,然后在第一个文 ...
- Linux文件查找工具之find “大宝剑”--转载
原文地址:http://xinzong.blog.51cto.com/10018904/1749465 一.文件查找工具常用软件 locate: locate命令其实是find -name的另一种写法 ...
随机推荐
- java或判断优化小技巧
写业务代码的时候,我们经常要做条件判断,有的时候条件判断的或判断长达20多个.reg.equals("1") || reg.equals("2") || reg ...
- 使用mescroll来实现移动端页面上拉刷新, 下拉加载更多功能
* mescroll请参考官方文档 1. 使用mescroll实现下拉滑动的效果: (仅仅效果, 有的页面不需要刷新数据, 只要你能下拉就行) 代码如下: var mescroll = new MeS ...
- Java设计模式-单例模式及线程安全问题
单例模式是非常常用的设计模式,他确保了一个类只有一个对象,并且这个对象是自己创建的,外界可以获取使用到这个对象. 单例模式一般有两种:懒汉式,饿汉式(其实还有一种登记式,把创建的对象放在map集合中, ...
- protobuf lib库的使用
问题记录: 1.在使用protobuf反射机制动态加载解析proto文件时,发现当proto文件中含有import系统proto文件的语句时,无法解析文件,解决方法是添加路径映射. google::p ...
- 仿vue实现简易版mvvm双向绑定
项目地址:https://github.com/pangyongsheng/mvvm 1. 指令 vm-bind 单选数据绑定- 将数据显示到标签视图 vm-model : 双向数据绑定 vm-sho ...
- 关于js中promise的面试题。
核心点promise在生命周期内有三种状态,分别是pending,fulfilled或rejected,状体改变只能是 pending-fulfilled,或者pending-rejected.而且状 ...
- KVM之五:KVM日常管理常用命令
1.查看.编辑及备份KVM 虚拟机配置文件 以及查看KVM 状态: 1.1.KVM 虚拟机默认的配置文件在 /etc/libvirt/qemu 目录下,默认是以虚拟机名称命名的.xml 文件,如下,: ...
- R语言-逻辑回归建模
案例1:使用逻辑回归模型,预测客户的信用评级 数据集中采用defect为因变量,其余变量为自变量 1.加载包和数据集 library(pROC) library(DMwR)model.df <- ...
- Jquery判断单选框是否选中和获取选中的值
第一种:利用选中值判断选中 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http ...
- 【WCF系列】(二)设计和实现服务协定
设计和实现服务协定 WCF术语介绍 服务(Service):服务是一个构造,它公开一个或多个终结点,其中每个终结点都公开一个或多个服务操作. 终结点(EndPoint):终结点是用来发送或接收消息(或 ...