【find】linux文件搜索命令find/locate
参考链接:https://mp.weixin.qq.com/s/y8LeZ0-9D56TWsD-ivPaHQ
一.按文件名称查找
按照文件名称查找是 find 最常见的用法,需要注意的是,搜索的文件名必须完全匹配,才能找到对应的文件。
1.查找当前目录下所有的 java文件
find . -name '*.java'
2.在 etc目录下 ,查找大写字母开头的txt文件
find /etc -name "[A-Z]*.txt" -print
在etc目录下,查找小写字母开头的log文件
find /etc -name "[a-z]*.log" -print
3.在当前目录下查找不是out开头的txt文件
find . -name "out*" -prune -o -name "*.txt" -print
4.在当前目录除git子目录外查找txt文件
find . -path "./git" -prune -o -name "*.txt" -print
二.按文件类型查找
1.在当前目录下,查找软连接文件
find . -type l -print
2.在当前目录下,查找log结尾的普通文件,f 表示普通文件类型
find . -type f -name "*.log"
三.按文件大小查找
1.查找小于60K的文件
find . -size -64k -print
2.查找大小超过200M的文件
find . -size +200M -type f -print
四.按时间查找
1.查找2天内被修改过的文件
find . -mtime -2 -type f -print
2.查找 2 天前被更改过的文件,-mtime
表示内容修改时间
find . -mtime +2 -type f -print
3.查找一天内被访问的文件,-atime
表示访问时间
find . -atime -1 -type f -print
4.查找一天内状态被改变的文件,-ctime
表示元数据被变化时间
find . -ctime -1 -type f -print
5.查找比 chopin.txt 新的文件
find . -newer "chopin.txt" -type f -print
find . ! -newer "chopin.txt" -type f -print # 旧
五.总结归纳
find
命令是 Linux 命令中最有用的命令之一,它的功能非常强大,且语法复杂。其实我们不一定需要了解它的所有细节,掌握上述实战案例中的常见用法,足够满足日常工作中的大部分需求。
下边我们一起来总结下 find 命令常见用法,加深对 find 使用方法的理解。
命令格式
find path -option [-exec ...]
按文件名查找
-name
:按照文件名称查找,准确匹配;-iname
:不区分文件名的大小写;-inode
:按照文件 inode 号查找
按照文件类型查找
按照文件类型查找,可以使用 -type
选项,具体支持的文件类型如下:
f
:普通文件d
:目录文件l
:链接文件s
:套接字文件p
:管道文件b
:块设备文件,比如:磁盘c
:字符设备文件,比如:键盘、鼠标、网卡
按照文件从属关系查找
-user
:以用户名查找-group
:以组名查找-uid
:以用户 ID 查找-gid
:以组 ID 查找-nouser
:查找没有属主的文件-nogroup
:查找没有属组的文件
按照文件大小查找
按照文件大小查找功能十分常用,用 -size
选项,选项后边指定大小 1024M
,表示大小的格式有如下几种:
-5M
:查找小于 5M 的文件+5M
:查找大于 5M 的文件5M
:查找大小为 5M 的文件
单位支持的有 c(字节)
、k
、M
、G
等,需要注意的是默认单位并不是字节,而是b
,大小为 512 字节。
【find】linux文件搜索命令find/locate的更多相关文章
- Linux的文件搜索命令(locate ,find,grep,find命令和)
刚开始学Linux,这是关于Linux文件搜索命令,就目前,尽我所能把他写全一点,后期随时补充 文件搜索命令 一.locate命令 二.find命令 三.grep命令 四.find命令和grep命令的 ...
- Linux文件搜索命令
文件搜索命令:locate locate 文件名 在后台数据库中按文件名搜索,搜索速度很快(比find命令要快得多) locate命令所搜索的后台数据库的位置:/var/bin/mlocate 支持模 ...
- Linux 文件搜索命令:find、which、whereis 和 locate
Linux 提供了许多用于文件搜索的命令,这些命令都很强大,但是也有一些不同之处,这里分别介绍一下. 一.find 命令 find 是最常见和最强大的一个文件搜索命令.使用 find 命令可以在指定目 ...
- Linux系列教程(六)——Linux文件搜索命令
前一篇博客我们讲解了Linux链接命令和权限管理命令, 通过 ln -s 链接名 表示创建软链接,不加-s表示创建硬链接:还有三个更改权限的命令,chmod命令可以更改文件或目录权限,chown命令 ...
- Linux —— 文件搜索命令
文件搜索命令(配置文件/etc/updatedb.conf) locate 文件名 搜索速度非常快 在后台数据库中按照文件名搜索 updatedb 更新数据库 只可以按照文件名搜索 whereis 命 ...
- linux 文件搜索命令find、-name、-iname、通配符*?、-size、-user、-group、-amin、-cmin、-mmin、-a、-o、-exec/-ok、-inum
尽可能规划好目录结构,少用文件搜索操作,因为它会占用大量的系统资源 find /bin/find find [搜索范围] [匹配条件] find /etc -name initfind /etc -n ...
- linux 文件搜索命令locate及updatedb
windows 搜索工具Everything是根据NTFS日志来搜索的,所以速度特别快 locate 类似于windows的Everything,搜索速度比较快 如果没有locate命令,可安装 yu ...
- Linux文件搜索命令locate、which、grep详解
命令locate详解 命令locate,其基本功能是在文件资料库中可以快速的搜索系统文件,占用系统资源很少,例如:locate my.cnf 还可以使用locate -i [文件名],不区分大小写进行 ...
- Linux——文件搜索命令简单笔记
一: 命令名称:which 命令所在路径:/usr/bin/which 执行权限:所有用户 功能描述:显示系统命令所在目录 范例:$ which ls 还有一个whereeis ls 命令 二: 命令 ...
随机推荐
- Python3.x 基础练习题100例(51-60)
练习51: 题目: 学习使用 按位与(&) . 分析: 0&0=0; 0&1=0; 1&0=0; 1&1=1. 程序: if __name__ == '__ma ...
- MySQL:单表查询
在线数据库:http://sqlfiddle.com/ 建表脚本:https://gitee.com/bqzzz/sql/tree/master/Scripts 基本查询 ①.查询所有记录 SELEC ...
- entitybuilder--一个简单的业务通用框架
关于业务通用框架的思考 业务系统是千差万别的,例如,保存.更新和删除订单,或者保存订单和保存客户,走的根本不是一个流程.但是,它们还是有共同点,它们的流程大致可以分成下面的几个部分: 拿到增删改等操作 ...
- Hi3559板载u-boot、kernel及rootfs烧录过程及心得
这一篇随笔讲叙述下基于Hi3559AV100的BOXER-8410AI板载u-boot.kernel及rootfs烧录具体过程及遇到问题的解决方法与心得. 1.前期板载启动测试和烧录手段 1.1.烧写 ...
- 通过序列号Sequence零代码实现订单流水号
序列号管理 本文通过产品编码和订单流水号介绍一下序列号(Sequence)在crudapi中的应用. 概要 序列号 MySQL数据库没有单独的Sequence,只支持自增长(increment)主键, ...
- python实现通过URL下载图片到本地服务器
import os import urllib.request image_url = 'http://img.jingtuitui.com/759fa20190115144450401.jpg' f ...
- Python模拟简易版淘宝客服机器人
对于用Python制作一个简易版的淘宝客服机器人,大概思路是:首先从数据库中用sql语句获取相关数据信息并将其封装成函数,然后定义机器问答的主体函数,对于问题的识别可以利用正则表达式来进行分析,结合现 ...
- 蛇形填数(JAVA语言)
package 第三章; import java.util.Scanner; public class 蛇形填数 { public static void main(String[] args) { ...
- SqlServer存储过程的创建与使用
什么是存储过程? T-SQL中的存储过程,非常类似于net语言中的方法,它可以重复调用.当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句. 这样就可以提高存储过程的性能. ...
- 如何在O(1)时间复杂度获取栈中最大值和最小值
问题描述: 如何在O(1)时间复杂度获取栈中的最大值和最小值? 问题分析: 普通栈规定的push(入栈).pop(出栈).peek(查看栈顶)等操作都只能在栈顶上操作,如果栈中元素是有序的,那么我们就 ...