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的另一种写法 ...
随机推荐
- python分支
if xxx : xxxxx elif xxxx : xxxxx elif xxxx : xxxxx else: xxxxxx 分支可以有效节省CPU的运算时间.避免悬挂else的出现 三元表达式 s ...
- Java基本包装类型
基本类型的对象包装,也就是将常用的基本数据类型包装成对象 byte Byte short Short int Integer long Long boolean Boolean float Float ...
- 网络通信 --> socket通信
socket通信 socket是应用层与TCP/IP协议族通信的中间软件抽象层,是一组接口.工作原理如下: 具体过程:服务器端先初始化socket,然后与端口绑定(bind),对端口进行监听(list ...
- .net core2.0下Ioc容器Autofac使用
.net core发布有一段时间了,最近两个月开始使用.net core2.0开发项目,大大小小遇到了一些问题.准备写个系列介绍一下是如何解决这些问题以及对应技术.先从IOC容器Autofac开始该系 ...
- iptables.sh 初始化防火墙配置
#!/bin/bash iptables -F iptables -X iptables -Z iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT ...
- DirectSound---捕获音频、Qml/C++ 集成交互
DirectSound的音频捕获原理和播放原理差不多,内部在一个缓冲区上循环写入捕获到的数据,并且提供notify通知功能. 1. 音频捕获 因为捕获流程和播放流程类似,我们就不在这里赘述了,只给出简 ...
- Mysql性能优化之覆盖索引
因为我们大多数情况下使用的都是Innodb,所以这篇博客主要依据Innodb来讲 b+树(图片来自网络) b+树图来自网络 1.聚集索引与非聚集索引区别 聚集索引:叶子节点包含完整的数据(物理地址连续 ...
- breeze源码阅读心得
在阅读Spark ML源码的过程中,发现很多机器学习中的优化问题,都是直接调用breeze库解决的,因此拿来breeze源码想一探究竟.整体来看,breeze是一个用scala实现的基 ...
- 云计算之路-阿里云上-容器难容:优化自建 docker swarm 集群的部署
在上周六遭遇阿里云容器服务 swarm 版的故障之后,我们决定还是走自建 docker swarm 之路,只要不是阿里云底层的问题,我们相信会找到办法解决或避开自建 docker swarm 不稳定的 ...
- numpy.random.seed()方法
先贴参考链接: https://stackoverflow.com/questions/21494489/what-does-numpy-random-seed0-do numpy.random.se ...