当前位置: 首页 > news >正文

Linux find命令

哈喽,大家好,我是有勇气的牛排(全网同名)🐮

有问题的小伙伴欢迎在文末评论,点赞、收藏是对我最大的支持!!!。

1 介绍

find命令用来查找置顶目录下的文件。任何位于参数之前的字符串都会被视为所要查找的目录名。如果使用命令时不设置任何参数,则默认查找当前目录以及子目录。

语法:

find path -option 
amin n : 在过去 n 分钟内被读取过
-anewer file : 比文件 file 更晚被读取过的文件
-atime n : 在过去 n 天内被读取过的文件
-cmin n : 在过去 n 分钟内被修改过
-cnewer file :比文件 file 更新的文件
-ctime n : 在过去 n 天内创建的文件
-mtime n : 在过去 n 天内修改过的文件
-empty : 空的文件-gid n or -group name : gid 是 n 或是 group 名称是 name
-ipath p, -path p : 路径名称符合 p 的文件,ipath 会忽略大小写
-name name, -iname name : 文件名称符合 name 的文件。iname 会忽略大小写
-size n : 文件大小 是 n 单位,b 代表 512 位元组的区块,c 表示字元数,k 表示 kilo bytes,w 是二个位元组。
-type c : 文件类型是 c 的文件。d: 目录c: 字型装置文件b: 区块装置文件p: 具名贮列f: 一般文件l: 符号连结s: socket

2 按后缀查文件

1、查询当前目录及子目录下,所有.log文件

find . -name "*.log"

image.png

忽略大小写,查询当前目录

find ./ -iname "*.log"

2、查询以 txt 以及 pid 结尾的文件

find ./ -name "*.log" -o -name "*.pid"

image.png

3正则

find ./ -regex ".*\(\.log\|\.pid\)$"

忽略大小写

find ./ -iregex ".*\(\.log\|\.pid\)$"

4 否定参数

查询nginx日志目录, 不以 .log 结尾的文件

find ./ ! -name "*.log"

image.png

5 按类型查找

-maxdepth: 最大深度限制
-mindepth: 距离当前目录深度

find . -type 类型参数

类型参数列表:

f 普通文件
l 符号连接
d 目录
c 字符设备
b 块设备
s 套接字
p Fifo

6 按照目录深度搜索

1、搜当前目录,最大深度深度 2 的普通文件

find . -maxdepth 2 -type f 

image.png

7 按时间搜索

最后一次访问时间:-atime(天)、 -amin(分钟)
最后一次修改时间:-mtime(天)、 -mmin(分钟)
最后一次变化时间:-ctime(天)、 -cmin(分钟

最近七天内被访问过的所有文件

find . -type f -atime -7

恰好在七天前被访问过的所有文件

find . -type f -atime 7

搜索超过七天内被访问过的所有文件

find . -type f -atime +7

找出比access.log修改时间更长的所有文件

find / -type f -newer access.log

2.7 按大小搜索

b: 块(512字节)
c: 字节(512字节)
w: 字(2字节)
k: 千字节
M: 兆字节
G: 吉字节

搜索 >1M 的文件

find . -type f -size +1M

搜索 == 1M 的文件

find . -type f -size 1M

搜索 < 1M 的文件

find . -type f -size -1M

9 删除

参数: -delete

删除当前目录下所有.txt文件

find . -type f -name "*.txt" -delete

10 权限、用户、用户组

10.1 权限

语法:-perm 权限

搜索权限为777的sh脚本

find / -type f -name "*.sh" -perm 777

非777权限的

find / -type f -name "*.sh" ! -perm 777

10.2 用户

语法:-user 用户名

find / -type f -name "*.sh" -user charles

10.3 用户组

语法:-group 用户组

find / -type f -name "*.sh" -group admin

https://wangchujiang.com/linux-command/c/find.html

11 其他

统计代码行数

find /usr/local/docker -name "*.py"|xargs cat|grep -v ^$|wc -l # 代码行数统计, 排除空行

参考地址:
https://www.couragesteak.com/article/250

http://www.lryc.cn/news/9613.html

相关文章:

  • vue项目实现会议预约(包含某天的某个时间段和某月的某几天)
  • javacv桌面推送 通过推送和拉取udp组播视频流实现
  • 2022年直播电商成交额,更是达到了24816亿元的成交额
  • 【学习总结】2023寒假总结
  • 宝塔搭建实战php源码人才求职管理系统后台端thinkphp源码(一)
  • stk 根据六根数文件生成卫星轨迹(一)
  • 深度学习算法面试常问问题(一)
  • Spring 底层原理与解析 - 容器接口
  • Compose-Navigation简单案例上手
  • 855. 考场就座
  • k8s之ingress(二)
  • linux下监测串口数据
  • 【面试之闭包】前端面试那些事(2)三分钟深入理解闭包(附详解实例)
  • 深入浅出带你学习WebSphere中间件漏洞
  • 如何一眼分辨是C还是C++
  • CMake系列:正确使用多配置编译系统
  • PCB中的HDI板生产中的变化
  • 程序分析与神经网络后门
  • redis主从哨兵模式
  • Spring 系列之 MVC
  • 电子技术——分立CS和CE放大器的低频响应
  • 代码随想录【Day16】| 104. 二叉树的最大深度、111. 二叉树的最小深度、222. 完全二叉树的节点个数
  • 状态机图、通信图题
  • 分布式文件存储Minio学习入门
  • handler解析(4)-Message及Message回收机制
  • Linux使用定时任务监控java进程并拉起
  • Win 10电脑摄像头提示错误代码0xa00f4244怎么办?
  • MFC消息机制
  • 全国计算机等级考试报名照片要求以及证件照制作教程
  • SQLSERVER 临时表和表变量到底有什么区别?