linux文件查找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
linux文件查找find的更多相关文章
- Linux文件查找.md
Linux 文件查找 在Linux系统的查找相关的命令: which 查看可执行文件的位置 whereis 查看文件的位置 locate 配合数据库查看文件位置 find 实际搜寻硬盘查询文件名称 w ...
- Linux文件查找命令find用法整理(locate/find)
Linux文件查找查找主要包括:locate和find 1.locate 用法简单,根据数据库查找,非实时,用法: locate FILENAME 手动更新数据库(时间可能较长) updatedb 2 ...
- linux文件查找find命令
linux文件查找find命令 1.文件查找 基本介绍 在文件系统上查找符合条件的文件 linux上常见的文件查找工具:find命令 查找分类 实时查找 精确查找 基本语法 find [option ...
- linux 文件查找,which,whereis,locate,find
linux 文件查找,which,whereis,locate,find 一:which 主要用于查找可执行命令的所在位置: 如图,查找命令 ls的目录: 二:whereis 主要用于查找命令的帮助文 ...
- Linux文件查找命令find,xargs详述【转】
转自:http://blog.csdn.net/cxylaf/article/details/4069595 转自http://www.linuxsir.org/main/?q=node/137 Li ...
- Linux文件查找
Linux下查找文件的命令有两个; locate: find : locate这个命令对其生成的数据库进行遍历(生成数据库的命令:updatedb),这一特性决定了查 找文件速度很快,但是locate ...
- Linux文件查找工具之find “大宝剑”--转载
原文地址:http://xinzong.blog.51cto.com/10018904/1749465 一.文件查找工具常用软件 locate: locate命令其实是find -name的另一种写法 ...
- linux - 文件查找及压缩
文件查找: 1. which 查找可以执行文件,只搜索$PATH里的目录 $ which ls /bin/ls which只搜索$PATH里的目录,如果搜索当前目录的文件是没有任何结果的 $ ...
- Linux 文件查找
在Linux系统的查找相关的命令: which 查看可执行文件的位置 whereis 查看文件的位置 locate 配合数据库查看文件位置 find 实际搜寻硬盘查询文件名称 whereis wher ...
- linux文件查找及操作
在linux下查找文件的办法最常用的就是find指令,让我们来看一下find指令如何来使用吧: find find . -name txt //在当前目录查找名字为txt的文 ...
随机推荐
- codeforces 707D D. Persistent Bookcase(dfs)
题目链接: D. Persistent Bookcase time limit per test 2 seconds memory limit per test 512 megabytes input ...
- php各种验证类
<?php /** * 验证类 * */ class VerifyAction{ /** * 是否为空值 */ public static func ...
- tarjan求割点
首先给大家一个网址讲的比较细:http://www.cnblogs.com/en-heng/p/4002658.html 如果还有不懂的话,可以回来再看看我的文章; 概念明确: 树边:(在[2]中称为 ...
- 使用 Anthem.NET 框架的一个调试经历
简介:Anthem 是一个很好用的 Ajax 框架,支持 ASP.NET 1.1, 2.0.由于该框架的所有控件都继承自 ASP.NET 自身的服务器控件,保留了几乎所有这些控件的属性和行为(除了把它 ...
- MySQL读取各个my.cnf配置文件的先后顺序是:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf 其他自定义路径下的my.cnf,例如:/data/mysql/y ...
- ElasticSearch logo 分布式搜索引擎 ElasticSearch
原文来自:http://www.oschina.net/p/elasticsearch Elastic Search 是一个基于Lucene构建的开源,分布式,RESTful搜索引擎.设计用于云计算中 ...
- 对API的理解
一. API(Application Programming Interface,应用程序编程接口) 1)定义:API是远程服务器或者操作系统的一些函数,是它们的一部分: 2)功能:用来接收应用程序( ...
- ZAB与Paxos算法的联系与区别
ZAB协议并不是Paxos算法的一个典型实现,在讲解ZAB和Paxos之间的区别之前,我们首先来看下两者的联系. 两者都存在一个类似于Leader进程的角色,由其负责协调多个Follow进程的运行. ...
- Mac系统的launchd、守护进程daemon(2013笔记整理)
1. launchd Mac系统下通用的进程管理器,是Mac系统下非常重要的一个进程,一般来说该进程不允许直接以命令行的形式调用.只能通过其控制管理界面,launchctl来进行控制. launchd ...
- ORA-12504:tns:监听程序在 CONNECT_DATA中未获得SERVICE_NAME
在VS2008中创建一个数据源时,提示以下错误 “ORA-12504:tns:监听程序在 CONNECT_DATA中未获得SERVICE_NAME” 本机安装ORACLE客户端,找出以下路径的文件D: ...