Linux下find命令详解

find     #查找文件

#按照文件名、大小、时间、权限、类型、所属者、所属组来搜索文件
格式:
    find    查找路径   查找条件   具体条件(按文件名或时间大小等)   操作
注意:
    find命令默认的操作是print输出
    find是检索文件的,grep是过滤文件中字符串

示例:
    • 按照文件名搜索
        ○ -name: 按照文件名搜索
        ○  -iname: 按照文件名搜索,不区分文件名大小写
        ○ -inum: 按照inode 号搜索
        ○ 没有那个文件或目录: find命令在执行时,在内存中自己产生的临时文件,执行完既消失

[root@node1 ~]# find /etc/ -name "passwd"     #查找文件名为passwd的文件
/etc/pam.d/passwd
/etc/passwd

[root@node1 ~]# find /etc/ -name "hosts"
/etc/hosts

[root@node1 ~]# find /etc/ -name "a*"         #以a开头的文件名
/etc/ca-trust/source/anchors
/etc/libvirt/nwfilter/allow-arp.xml
/etc/libvirt/nwfilter/allow-dhcp.xml
/etc/libvirt/nwfilter/allow-incoming-ipv4.xml
/etc/libvirt/nwfilter/allow-ipv4.xml
/etc/libvirt/nwfilter/allow-dhcp-server.xml
/etc/libvirt/qemu/networks/autostart
/etc/at.allow

一、find的通配符

 • "*":任意字符任意个数
 • "?":任意字符1个内容

示例:

[root@node1 ~]# find /etc/ -iname "B*"         #查找忽略B的大小写
/etc/binfmt.d
/etc/selinux/targeted/booleans.subs_dist
/etc/ld.so.conf.d/binutils-x86_64.conf
/etc/libibverbs.d/bnxt_re.driver
/etc/logrotate.d/btmp
/etc/bluetooth

[root@node1 ~]# find /etc/ -iname "?b*"      #查找第二个字母为b的文件
/etc/selinux/targeted/contexts/dbus_contexts
/etc/ld.so.conf.d/jbig2dec-x86_64.conf
/etc/ld.so.conf.d/ebtables-x86_64.conf
/etc/asciidoc/dblatex

[root@node1 ~]# find / -name "*.cfg"         #查找以 .cfg 结尾的文件
/boot/grub2/grub.cfg
/etc/grub2.cfg
/etc/libblockdev/conf.d/10-lvm-dbus.cfg
/etc/libblockdev/conf.d/00-default.cfg
/etc/vdpau_wrapper.cfg

二、按照文件大小搜索  

• -size [+ -大小: 按照指定大小搜索文件,“+”的意思是搜索比指定大小还要大的文件,“”的意思是搜索比指定大小还要小的文件

示例:

[root@node1 ~]# find / -size +100M       #找大于100M的文件
/sys/devices/pci0000:00/0000:00:0f.0/resource1
/sys/devices/pci0000:00/0000:00:0f.0/resource1_wc
/proc/kcore

[root@node1 ~]# find / -size -100M      #查找小于100M的文件
[root@node1 ~]# find / -size 100M      #查找等于100M的文件

三、按照修改时间搜索

    • -atime [+|-]时间: 按照文件访问时间搜索
    • -mtirne [+|-]时间:按照文件数据修改时间搜索
    • -ctime [+|-]时间: 按照文件状态修改时间搜索
    • -newer file: 把file修改时间更新的文件列出来
注意:时间范围问题
        ○ -5:代表 5 天内修改的文件
        ○ 5: 代表前 5~6 天那一天修改的文件
        ○ +5: 代表 6 天前修改的文件

 四、按照所有者和所属组搜索

    • -uid 用户ID: 按照用户 ID 查找所有者是指定 ID 的文件
    •  -gid 组ID: 按照用户组 ID 查找所组是指定 ID 的文件
    •  -user 用户名: 按照用户名查找所有者是指定用户的文件
    • -group 组名: 按照组名查找所属组是指定用户组的文件。

示例:

[root@node1 ~]# find / -user root      #查找归属于管理员的文件
/proc/1899/task/2038/net/fib_trie
/proc/1899/task/2038/net/if_inet6
/proc/1899/task/2038/net/mcfilter
/proc/1899/task/2038/net/rt_cache
/proc/1899/task/2038/net/sockstat
/proc/1899/task/2038/net/udplite6
/proc/1899/task/2038/net/connector
/proc/1899/task/2038/net/dev_mcast
/proc/1899/task/2038/net/dev_snmp6

五、按照权限搜索

    • -perm 权限模式:查找文件权限刚好等于“权限模式”的文件,常用
    • -perm -权限模式: 查找文件权限全部包含“权限模式”的文件
    • -perm +权限模式: 查找文件权限包含“权限模式”的任意一个权限的文件。
    • 如果要在整个系统中搜索权限中包括SUID权限的所有文件,只需使用-4000即可:

示例:

[root@node1 ~]# find / -perm 400       #查找只读权限
[root@node1 ~]# find / -perm 777       #查找完整权限的文件

六、按文件类型寻找

-type d: 查找目录 
-type f: 查找普通文件 

-type l: 查找软链接文件 

示例:

[root@node1 ~]# find / -type d      #在根目录下查找目录

七、按照逻辑运算符

-a: and 逻辑与 
-o: or 逻辑或 
-not: not 逻辑非 
优先级:与>或>非

示例:

[root@node1 ~]# find / -size +10k -a -size -50k             #查看大于10k且小于50k的文件
[root@node1 ~]# find /etc/ -name "e*" -o -name "f*"      #查找以e或f开头的文件
/etc/ld.so.conf.d/evolution-data-server-x86_64.conf
/etc/ld.so.conf.d/epiphany-x86_64.conf
/etc/ld.so.conf.d/freerdp-x86_64.conf
/etc/ld.so.conf.d/ebtables-x86_64.conf
/etc/ld.so.conf.d/esc-x86_64.conf
/etc/libibverbs.d/efa.driver
 
[root@node1 ~]# find /etc/ -name "d*" -user root       #默认为and,不写默认为and
/etc/dnsmasq.conf
/etc/fwupd/remotes.d/dell-esrt.conf
/etc/fwupd/daemon.conf
/etc/gnome-vfs-2.0/modules/default-modules.conf
/etc/libvirt/qemu/networks/autostart/default.xml
/etc/libvirt/qemu/networks/default.xml

八、-exec……{}\;

[root@node1 ~]# find ~ -user root -exec cp -a {} /media \;
#找到家目录下归属于root账户的文件将

 ~ -user root      #拷贝到/media目录下
#{ }代表拷贝源文件   \; 代表结束

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Springcloud篇】学习笔记二(四至六章):Eureka、Zookeeper、Consul

第四章_Eureka服务注册与发现 1.Eureka基础知识 1.1Eureka工作流程-服务注册 1.2Eureka两大组件 2.单机Eureka构建步骤 IDEA生成EurekaServer端服务注册中心,类似于物业公司 EurekaClient端cloud-provider-payment8081将注册进EurekaServer成为服务提供者provide…

【学员分享-考试心得】国产数据库潜力无限,云贝教育OBCP认证培训帮您解难题

近年来,随着国产化转型的推进,国外数据库的岗位需求逐渐减少,让许多IT从业者倍感压力。在这种情况下,了解国产数据库成为了求职市场上的竞争力。云贝老师们将聚焦于OceanBase、PostgreSQL、TDSQL等IT培训,探讨其对国产…

如何计算模型的复杂度(参数量,FLOPs)

参考 如何计算神经网络模型的复杂度 深度学习卷积、全连接层、深度可分离层参数量和FLOPs计算公式 概念 Params:模型的参数量。(空间复杂度)FLOPs:FLoating point Operations,前向推理的计算量。(时间复…

Loadbalancer如何优雅分担服务负荷

欢迎来到我的博客,代码的世界里,每一行都是一个故事 Loadbalancer如何优雅分担服务负荷 前言Loadbalancer基础:数字世界的分配大师1. 分发请求:2. 健康检查:3. 会话保持:4. 可伸缩性:5. 负载均衡…

hivesql的基础知识点

目录 一、各数据类型的基础知识点 1.1 数值类型 整数 小数 float double(常用) decimal(针对高精度) 1.2 日期类型 date datetime timestamp time year 1.3 字符串类型 char varchar / varchar2 blob /text tinyblob / tinytext mediumblob / mediumtext lon…

2024年美国大学生数学建模竞赛(F题)减少非法野生动物贸易|ABM/神经网络建模解析,小鹿学长带队指引全代码文章与思路

我是鹿鹿学长,就读于上海交通大学,截至目前已经帮200人完成了建模与思路的构建的处理了~ 本篇文章是鹿鹿学长经过深度思考,独辟蹊径,通过Agent-Based Modeling解决非法野生动植物贸易问题。结合神经网络、集成学习、贝…

前端工程化之:webpack1-13(内置插件)

目录 一、内置插件 1.DefinePlugin 2.BannerPlugin 3.ProvidePlugin 一、内置插件 所有的 webpack 内置插件都作为 webpack 的静态属性存在的,使用下面的方式即可创建一个插件对象: const webpack require("webpack")new webpack.插件…

影院购票|电影院订票选座小程序|基于微信小程序的电影院购票系统设计与实现(源码+数据库+文档)

电影院订票选座小程序目录 目录 基于微信小程序的电影院购票系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、用户功能实现 2、管理员功能实现 (1)影院信息管理 (2)电影信息管理 (3)已…

电源芯片并联使用-AMS1117

自记: 电源芯片可不可以并联使用: 1.按照正规大厂Rohm的技术文档介绍,直接并联的两个LDO,只要其输出电压有很小的差异,就会造成电流分配的很大差异。 至于你长期使用没有发现问题,那可能是总电流的余量留…

蓝桥杯---煤球数目

有一堆煤球,堆成三角棱锥形。具体: 第一层放1个, 第二层3个(排列成三角形), 第三层6个(排列成三角形), 第四层10个(排列成三角形), 如果一共有100层,共有多少个煤球? 请填表示煤球总数目的数字. 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字. 代码 pu…

Ingress

文章目录 环境准备什么是 Ingress认识 Ingress 资源Ingress 控制器(controller)Ingress 规则pathType 路径类型多重匹配Ingress 类TLS生成证书创建密钥 环境准备 下面的 yaml 文件内容,是使用 sts 创建两个 web 服务,并配置对应的 servcie。web 服务的首…

【JavaScript】前端攻击

前端攻击 1. CSRF的基本概念、缩写、全称 CSRF(Cross-site request forgery):跨站请求伪造。 从上图可以看出,要完成一次CSRF攻击,受害者必须满足两个必要的条件: 登录受信任网站A,并在本地生…

【疑问】为什么声明和定义要分离

前言 我们在学习的时候接触过一个话:编写自定义函数的时候 要做到声明和定义分离 那么为什么呢 今天就来简单的了解一下 疑问:错误的发生 下面给出两个源文件和一个头文件以及报错信息 text.cc文件 #include"head.h"int main() {int a 1…

深入理解指针(3)

⽬录 1. 字符指针变量 2. 数组指针变量 3. ⼆维数组传参的本质 4. 函数指针变量 5. 函数指针数组 6. 转移表 1. 字符指针变量 在指针的类型中我们知道有⼀种指针类型为字符指针 char* ; ⼀般使⽤: int main() {char ch w;char *pc &ch;*pc w;return 0; } 还有…

C++类和对象入门(二)

顾得泉:个人主页 个人专栏:《Linux操作系统》 《C从入门到精通》 《LeedCode刷题》 键盘敲烂,年薪百万! 一、类的作用域 类定义了一个新的作用域,类的所有成员都在类的作用域中。在类体外定义成员时,需要…

云服务器安全组、防火墙、端口问题,结合telnet解决项目部署无法访问

无论是运维还是后台亲自操刀在云服务器上部署项目,往往会遇到项目部署上去了,也确定项目正常运行,但还是没法访问的问题。 如果没有经验的小伙伴,很容易陷入疑惑的状态,无从下手解决。 其实这涉及到云平台安全组、服…

idea创建sping项目

一、环境 window10 IDEA 2022.2.3 maven-3.8.6 二、创建sping项目 1、新建Maven项目 File -> New -> Project 然后如下图选中Maven Archetype,在Archetype,选中maven-archetype-webapp,点击Create 2、配置maven 默认是使用IDEA内置…

《Pandas 简易速速上手小册》第9章:Pandas 数据可视化(2024 最新版)

文章目录 9.1 Pandas 内置可视化工具9.1.1 基础知识9.1.2 重点案例:销售数据分析9.1.3 拓展案例一:产品评价统计9.1.4 拓展案例二:员工满意度分布 9.2 与 Matplotlib 和 Seaborn 集成9.2.1 基础知识9.2.2 重点案例:销售趋势分析9.…

性能测试常用术语

之前在性能测试过程中,对于某些其中的术语一知半解,导致踩了很多坑。这篇博客,就常见的一些性能测试术语进行一次浅析。。。 负载 对被测系统不断施加压力,直到性能指标超过预期或某项资源使用达到饱和,以验证系统的处…