【Shell】find文件查找

news2025/1/19 14:22:39

语法格式

find [路径] [选项] [操作]

选项参数对照表

在这里插入图片描述
在这里插入图片描述

常用选项

-name 查找/etc目录下以conf结尾的文件ind /etc -nam
-iname 查找当前目录下文件名为aa的文件,不区分大小写 find . -iname aa
-user 查找文件属主为hdfs的所有文件find . -user hdfs
-group 查找文件属组为yarn的所有文件find . -group yarn
-type

	f		文件			 		find . -type f
	d		目录					find . -type d
	c		字符设备文件			find . -type c
	b		块设备文件			find . -type b
	l		链接文件				find . -type l
	p		管道文件				find . -type p

-size 文件大小

    -n		小于n的文件
	+n	    大于n的文件
	 n		等于n的文件

例子1:查找/etc目录下小于10000字节的文件 find /etc -size -10000c
例子2:查找/etc目录下大于1M的文件 find /etc -size +1M

-mtime 修改天数

	-n 		n天以内修改的文件
	+n		n天以外修改的文件
	 n		正好n天修改的文件

例子1:查找/etc目录下5天之内修改且以cons结尾的文件 find /etc -mtime -5 -name ‘*.conf’
例子2:查找/etc目录下10天之前修改且属主为root的文件find /etc -mtime +10 -user root

-mmin 修改分钟

	-n		n分钟以内修改的文件
	+n		n分钟以外修改的文件

例子1:查找/etc目录下30分钟之前修改的文件 find /etc -mmin +30
例子2:查找/etc目录下30分钟之内修改的目录 find /etc -mmin -30 -type d

-mindepth n 表示从n级子目录开始搜索

例子:在/etc下的3级子目录开始搜索find /etc -mindepth 3

-maxdepth n 表示最多搜索到n-1级子目录

例子1:在/etc下搜索符合条件的文件,但最多搜索到2级子目录
find /etc -maxdepth 3 -name '*.conf'
例子2:find ./etc/ -type f -name '*.conf' -size +10k -maxdepth 2

不常用选项

-nouser 查询没有所属用户的文件,find /etc -type f -nouser
-nogroup 查询没有所属组的文件,find /etc -type f -nogroup
-perm 根据文件权限查找,find . -perm 664
-prune 排除文件或目录
通常和-path一起使用,用于将特定目录排除在搜索条件之外。-path ./etc -prune 固定格式。

例子1:查找当前目录下所有普通文件,但排除test自
find . -path ./etc -prune -o -type f
例子2:查找当前目录下所有普通文件,但排除etc和opt目录
find . -path ./etc -prune -o -path ./opt -prune -o -type f
例子3:查找当前目录下所有普通文件,但排除etc和opt目录,但属主为hdfs
find . -path ./etc -prune -o -path ./opt -prune -o -type f -a -user hdfs
例子4:查找当前目录下所有普通文件,但排除etc和opt目录,但属主为hdfs,且文件大小必须大于500字节
find . -path ./etc -prune -o -path ./opt -prune -o -type f -a -user hdfs -a -size +500c

-newer file1 查找当前目录下比 a 文件要新的文件

例子: find /etc -newer a

操作

-print 打印输出。 默认的选项,即打印出找到的结果。
-exec 对搜索到的文件执行特定的操作,固定的格式为:-exec 'commond' {} \; 注意:{} 表示查询的结果。

例1: 搜索 /etc 目录下的文件(非目录),文件以 conf 结尾,且大于 10k,然后将其删除。
find /etc -type f -name '*.conf' -size +10k -exec rm -f {} \;
例2: 将 /data/log/ 目录下以 .log 结尾的文件,且更改时间在 7 天以上的删除。
find /data/log -name '*.log' -mtime +7 -exec rm -f \;
例3: 搜索条件同 例1 一样,但是不删除,只是将其复制到 /root/conf 目录下
find /etc -type f -name '*.conf' -size +10k -exec cp {} /root/conf/ \;

-ok 和 -exec 的功能一样,只是每次操作都会给用户提示。

逻辑运算符

-a    与 (默认情况查询条件之间都是 与 的关系)

-o    或

-not | !  非

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/106205.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

虹科方案 | 解决连接到IEEE 1588高可用性网络的SCADA系统的NTP同步参考问题

目前,各个行业都在朝着以太网融合的趋势发展,近年来也出现了一些可用于增强标准以太网弹性的技术创新,并被用作运营(OT)和信息技术(IT)的通用链路层。电气等具有高可用性和严格时序要求的关键领域推动了这些…

1362:家庭问题(family)

1362:家庭问题(family) 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 6732 通过数: 3529 【题目描述】 有n个人,编号为1,2,……n,另外还知道存在K个关系。一个关系的表达为二元组(α,β)形式…

GBK编码的理解

1、我们学程序的时候,所熟知的ASCII码,就是一种编码方式 计算机底层,就只认识0和1. 举个例子,以3bit为例: 所以,如果是000的话,可以对应数字0 如果是001的话,可以对应数字1 。。…

非零基础自学Golang 第13章 并发与通道 13.4 select 13.5 小结

非零基础自学Golang 文章目录非零基础自学Golang第13章 并发与通道13.4 select13.4.1 select作用13.4.2 超时13.4.3 死锁13.5 小结第13章 并发与通道 13.4 select Go语言中,通过关键字select可以监听channel上的数据流动。 select的用法和switch非常相似&#xf…

Python中的基本数据类型

文章目录前言一、字符串类型字符串表示方法二、数字类型1. 整数2.浮点数3.复数三、布尔类型总结前言 我们一般在电脑中存储的数据有多种数据类型。比如下图这张员工工资表: 表中员工姓名可以用字符串类型存储(比如"李世民"、“侯君集”&#…

Hadoop学习----HDFS

文件系统 文件系统:是一种存储和组织数据的方法,实现数据的存储、分级组织、访问和获取等操作,使得用户对文件访问和查找变得容易。文件系统使用树形目录的抽象逻辑概念代替了硬盘等物理设备使用数据块的概念,用户不必关心数据底…

实验三 进程的互斥与同步

文章目录一、 实验目的二、 实验原理三、实验内容四、我的代码内容和现象1、philosopher12、philosopher2这个程序不会发生死锁,因为五、课后习题:1.什么是死锁?产生死锁的原因和必要条件是什么?2.实验中给出的伪代码流程&#xf…

Problem Set 3

1Lagrange Duality Formulate the Lagrange dual problem of the following linear programming prob-lem min cT rs.t.Ax 二b where a ∈R is variable,c ∈ R",A ∈Rkn, b ∈ Rk. 解:设拉格朗日函数为L(x,λ)cTxλT(Ax−b)\mathcal{L}(x,\lambda)…

第十七章 webpack5项目搭建Vue-Cli(开发模式)

step1–创建项目目录 创建一个目录用来搭建vue-cli的项目 mkdir vue-cli cd vue-clistep2–初始化项目 初始化项目,生成一个package.json文件 npm init -ystep3–编写vue-cli的开发模式配置 新建目录 / |-config | |--webpack.dev.js | |--webpack.prod.js我…

USB TO SPI(上海同旺电子)调试器调试25LC020A

所需设备: 1、USB TO SPI(上海同旺电子); 2、25LC020A 2Kb 2.5V SPI Serial EEPROM; Microchip 25LC020A 是一款 2 Kb 串行 EEPROM,采用行业标准串行外设接口 (SPI) 兼容串行总线。 该器件被组织为一个 256 x 8 位块,并针对消…

Java安全--CC7

在学CC7的时候我有这么几个疑问 1.为什么要两个LazyMap 2.hashCode那一步怎么计算的 3.为什么要remove yy 4.为什么put两个 我们可以先看一下CC7的链子是怎么走的: 其实分析链子还是从命令执行走到readObject比较好理解,虽然比较麻烦,比较繁琐&#xff0…

机器人机械臂运动学——逆运动学解算

1.情景概述 假设最一般的情况,我们的机械臂有六个自由度,那么从初始状态想要变化到目标的状态,一般情况下我们至少需要进行六次的变换,而这六次变换的矩阵参数隐含在整体的变换矩阵中。 根据之前的知识,左上角的3*3代表…

m基于隐马尔科夫模型(HMM)的手机用户行为预测(MMUB)算法matlab仿真

目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 隐马尔可夫模型(Hidden Markov Model,HMM)是一种统计模型,广泛应用在语音识别,词性自动标注,音字转换,概率文法…

R语言中的Nelson-Siegel模型在汇率预测的应用

这篇文章的目的是指导读者逐步使用R编程语言实现Nelson-Siegel模型的步骤。 最近我们被客户要求撰写关于Nelson-Siegel模型的研究报告,包括一些图形和统计输出。 您可能已经知道,估计利率期限结构是任何资产定价的关键,因此对投资者和政策制…

5G无线技术基础自学系列 | 基于Massive MIMO的场景化波束优化

素材来源:《5G无线网络规划与优化》 一边学习一边整理内容,并与大家分享,侵权即删,谢谢支持! 附上汇总贴:5G无线技术基础自学系列 | 汇总_COCOgsta的博客-CSDN博客 前面内容提到, 5G中引入了M…

机器人机械臂运动学——运动学正向解算

本博客内容参考台湾大学_林沛群教授_机器人学的课程内容 1.相对运动关系的描述方法 假设有现在这样的一个情景,从左到右有三个转轴,转轴本身可以转动,也可以沿着轴线上下平动,那么我们如何描述其中的运动学关系及其位置关系呢&am…

Linux Red Hat 8.0 cat、cut、sed、tail命令

1.cat: 在终端设备上显示文件内容 常用选项: -n 显示行数(空格有编号) -b 显示行数(空格没有编号) 命令格式:cat 选项 文件 特殊用法tac:倒着显示内容 配合重定向使用 查看 test1…

DPDK 多进程

DPDK库里是支持多进程和多线程,本文主要总结多进程的相关的操作。 DPDK多进程使用的关键启动参数: --proc-type:指定一个dpdk进程是主进程还是副进程(参数值就用上面的primary或是secondary,或者是auto)-…

【Bio】基础生物学 - 五个重要官能团 five important functional group

文章目录1. 羟qiǎng基(hydroxyl)2. 羧suō基(carboxyl)3. 氨基(amino)4. 磷酸盐(phosphate)5. 巯基(sulfhydryl)1. 羟qiǎng基(hydroxyl&#xf…

最新进展 | Android 自定义机器学习堆栈

作者 / Android 机器学习平台团队相较于服务器端机器学习 (ML),设备端机器学习有其独特的优势,如支持离线使用、延迟更低、隐私性更高和推理成本更低,因此 Android 中设备端机器学习的使用迅速增长。在构建基于设备端 ML 的功能时&#xff0c…