云计算【第一阶段(13)】Linux的Find命令

news2024/12/23 14:26:26

一、查找文件或目录Find

格式

find 查找的范围  类型    查找数据 

1.1、常用查找类型

查找类型关键字说明
按名称查找-name根据目标文件的名称进行查找,允许使用“*”及“?”通配符
按文件大小查找-size根据目标文件的大小进行查找,一般使用“+”、“-”号设置超过或小于指定的大小作为查找条件常用的容量单位包括kB(注意k是小写)、MB、GB
按文件属主查找-user根据文件是否属于目标用户进行查找
按文件类型查找(常用类型)-type文件类型包括普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(c)等

 1.2、-name参数案列

可以用通配符

find   /data/    -name   "*.txt"      #查找/data/目录以.txt结尾的文件;
find   /data/    -name   "[A-Z]*"     #查找/data/目录以大写字母开头的文件;
find   /data/    -name   "test*"      #查找/data/目录以test开头的文件;


1.3、-size参数案列

find   /data/    -size   +1M              #查文件大小,大于1Mb的文件;
find   /data/    -size   1M               #查文件大小,为1M的文件;
find   /data/    -size   -1M              #查文件大小,小于1Mb的文件;

扩展

dd: 是一个用于复制和转换文件命令

  • if=/dev/zero: 指定输入文件(input file)为 /dev/zero。/dev/zero 是一个特殊的设备文件,它只生成空字符(null bytes,即值为 0 的字节)。
  • of=ceshi.txt: 指定输出文件(output file)为 ceshi.txt。这意味着 dd 命令将把从 /dev/zero 读取的数据写入到 ceshi.txt 文件中
  • count=1: 表示只复制 1 个块(block)的数据。
  • bs=10M: 设置块大小(block size)为 10 兆字节(Megabytes)

这种操作通常用于快速生成一个指定大小的文件,尤其是当你需要一个大文件来进行某种测试或填充磁盘空间时。

1.4、-user参数案列

find /home -user 用户名
find /home -user 用户名  -group 组名

1.5、 -type参数教案

文件类型包括:普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(c)链接文件(l)等

find /boot -type d
find   /data/    -type d    #查找/data/目录下的文件夹;
find   /data/    !   -type   d     #查找/data/目录下的非文件夹;
find   /data/    -type  l    #查找/data/目录下的链接文件。
find  /data/ -type d|xargs chmod 755 -R #查目录类型并将权限设置为755;
find  /data/ -type f|xargs chmod 644 -R #查文件类型并将权限设置为644;

扩展1

  1. 块设备文件(b)是指硬盘、固态硬盘等存储设备
  2. 字符设备文件(c)是指在I/O传输过程中以字符为单位进行传输的设备文件,如键盘、鼠标、串口和打印机等允许用户以字节为单位与其进行交互的设备。

    字符设备的一个主要特点是它们不具备缓冲区,并且通常不支持随机存取。这意味着对这种设备的读写是实时的,并且数据是按照字符流的方式被有序访问的

扩展2

xargs命令是给其他命令传递参数的一个过滤器,也是组合多个命令的一个工具。它擅长将标准输入数据转换成命令行参数

简单的说就是传递数据的,chomd不是管道命令,不能从标准输入设备上读取数据,但是加上xargs就可以了。

find ./ -maxdepth 1 -type f -print0 | xargs -0 ls -lh

1.5.1、情况问题

如果目录恰巧也是.log命名,如果查询到并且删除就出现问题了

在查询的时候需要加入-type f作为一个限制

 

1.6、多条件查找

  • -a    并且
  • -o    或者
  • -!   取反

-a表示两个条件必须同时满足, -o表示只需满足其中任何一个条件即可

a高于o

[root@localhost ~]# find /mnt -user root -a -size +5m

[root@localhost ~]# find /mnt -user root -o -size +5m

1.7、空文件

-empty

1.8、时间戳

  • atime (访问时间):
    • 最后一次读取文件内容的时间。
    • 注意:仅当读取文件内容时才更新,读取文件的元数据(如使用ls命令)通常不会更新atime。
    • 一些文件系统或挂载选项可能会禁用atime的更新,以减少磁盘I/O操作(例如,使用noatimerelatime挂载选项)。
  • mtime (修改时间):
    • 最后一次修改文件内容的时间。
    • 当文件内容被修改时,mtime会被更新。
    • 这是最常见的用于追踪文件内容变化的时间戳。
  • ctime (状态改变时间):
    • 最后一次更改文件状态(inode信息)的时间。
    • 这不仅包括文件内容的更改,还包括文件权限、所有权等元数据的更改。
    • 即使文件内容没有改变,只要文件的元数据(如权限、所有权)发生变化,ctime也会被更新。
  • -min:
    • 这不是一个独立的时间戳,而是一个常用的参数选项,通常与find命令结合使用,用于指定时间范围。
    • 例如,find /path/to/search -mtime -5会找到在过去5分钟内修改过的文件。
    • -min通常与-atime-mtime-ctime一起使用,指定时间范围以分钟为单位。

1.9、处理动作 

按权限查找:-perm
[root@localhost ~]# find /bin/ -perm 755 # 等于 0755 权限的文件或目录
[root@localhost  ~]# find /bin/ -perm -644 #-perm -644 至少有 644 权限的文件或目录

在当前目录下(包含子目录),删除所有txt文件 
find ./ -name "*.txt" -exec rm {} \; 

在当前目录下(包含子目录),查找所有txt文件并找出含有字符串"bin"的行 
find ./ -name "*.txt" -exec grep "bin" {} \; 


 

1.10、生产案列

(注意:{} \中间有空格)

find /backup/ -type f -name "*.log" -exec rm {} \;  #删除备份文件
find /backup/ -type f -name "*.dmp" -exec rm {} \;
#删除日志文件
find /backup/ -type f -name "*.tar.gz" -mtime +5 -exec rm -rf {} \; #删除5天前的备份


 

 

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

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

相关文章

[华为北向网管NCE开发教程(6)消息订阅

1.作用 之前介绍的都是我们向网管NCE发起请求获取数据,消息订阅则反过来,是网管NCE系统给我们推送信息。其原理和MQ,JMS这些差不多,这里不过多累述。 2.场景 所支持订阅的场景有如下,以告警通知为例,当我…

基于51单片机智能路灯控制—人数、光强

基于51单片机智能路灯控制 (仿真+程序) 功能介绍 具体功能: 1.光敏电阻与电阻组成分压电路,环境光强度越强,光敏电阻越小,ADC检测的电压越强; 2.红外计数传感器(按键…

Introducing Index-1.9B

简介 大家好,今天我们很高兴首次发布Index系列模型中的轻量版本:Index-1.9B系列 本次开源的Index-1.9B 系列包含以下模型: Index-1.9B base : 基座模型,具有 19亿 非词嵌入参数量,在2.8T 中英文为主的语料上预训练&…

01本地图像导入及参数设置

左边工具栏:采集-》图像源,点击后 拉到流程窗口中 在右边有三个按钮可以添加图像和图像文件夹。 双击 图像源 可以打开 参数设置 参数说明: 像素格式:MONO8 表示图像为黑白图像,RGB24为彩色图像。看你想以什么图像打开…

JS手写题解析

手写Promise class MyPromise {constructor(executor) { // executor执行器this.status pending // 等待状态this.value null // 成功或失败的参数this.fulfilledCallbacks [] // 成功的函数队列this.rejectedCallbacks [] // 失败的函数队列const that thisfunction reso…

我的创作纪念日 --- 携手CSDN的512天

起航 时间过得可真快啊,转眼间距离我发的第一篇文章已经有512天了,那是一个寒假,当我发现自己又浑浑噩噩的过完了一个学期时,我才开始思考自己想拥有怎样的人生,然后我就写下了自己的第一篇文章 about me,…

哪些国产项目管理软件最受欢迎?详细解读六大主流系统

满足国产化诉求的6款项目管理系统:PingCode、Worktile、Teambition、禅道、华为云DevCloud、Tapd。 国产项目管理软件以其定制化高、适应本土市场的优势,正成为越来越多企业的选择。本文将探讨几款优秀的国产项目管理工具,帮助您找到提升团队…

C# WPF入门学习主线篇(三十三)—— 使用ICommand实现命令绑定

C# WPF入门学习主线篇(三十三)—— 使用ICommand实现命令绑定 在MVVM模式中,命令绑定是将用户交互(如按钮点击)与ViewModel中的方法连接起来的一种机制。使用ICommand接口可以实现这一功能,从而将UI逻辑与业…

癫狂头歌动态规划之跳跃问题Python

第一关跳跃问题 这里我照着图片的代码敲市过不去,真够癫狂的 def CollectValues():n, m map(int, input().split()) #获得输入信息p [list(map(int, input().split())) for i in range(n)] #获得输入信息dp [[-10000] * m for i in range(n)] #初始化动态规划数…

【K8s】专题五(2):Kubernetes 配置之 Secret

以下内容均来自个人笔记并重新梳理,如有错误欢迎指正!如果对您有帮助,烦请点赞、关注、转发!欢迎扫码关注个人公众号! 目录 一、基本介绍 二、主要特性 三、资源清单(示例) 四、常用操作 一…

入职3年-我如何做一名AI产品经理(文末福利)

引言 从2021年校招加入京东开始,我一直从事AI产品经理的工作,有幸见证了AI行业的热情从一台台服务器烧到了全世界各个角落,也见证了京东AI中台团队的影响力如何一步步的扩大。从21年的迷茫到24年的坚定,很庆幸我正走在适合自己的…

深圳职工餐厅安全检测新策略:自动可燃气体报警器的作用

在现代化的都市生活中,安全问题一直备受关注。 对于深圳众多职工餐厅来说,如何确保餐厅内的燃气使用安全,防止因可燃气体泄露而引发的火灾事故,成为了一项重要的挑战。 近年来,自动可燃气体报警器以其高度的灵敏度和…

微软无所不知的人工智能召回功能“Recall”被推迟,将不会与 Copilot Plus PC 一起提供

微软计划下周推出新的 Copilot Plus 个人电脑,取消其备受争议的 Recall 功能,该功能可以截取您在这些新笔记本电脑上所做的所有操作。该软件制造商推迟了 Recall,以便可以通过 Windows Insider 程序对其进行测试,此前该公司最初承…

Redis 7.x 系列【2】单机部署

有道无术,术尚可求,有术无道,止于术。 本系列Redis 版本 7.2.5 源码地址:https://gitee.com/pearl-organization/study-redis-demo 文章目录 1. Windows2. Linux 1. Windows Redis作为一个高性能的内存数据库,和Linu…

爬虫-模拟登陆博客

import requests from bs4 import BeautifulSoupheaders {user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36 } # 登录参数 login_data {log: codetime,pwd: shanbay520,wp-submit: …

C++ 36 之 this指针

#include <iostream> #include <string.h> using namespace std;// this指针 永远指向当前对象 class Students06{ public:int age;// int m_age; //member成员首字母mStudents06(int age){// 1.解决命名冲突的问题 this指针找成员变量需要使用->符号this->…

【Linux】基础指令(一)

一、ls指令 语法&#xff1a; ls [选项][目录或文件] 功能&#xff1a;对于目录&#xff0c;该命令列出该目录下的所有子目录与文件。对于文件&#xff0c;将列出文件名以及其他信息 常见选项&#xff1a; -a 列出目录下的所有文件&#xff0c;包括以 . 开头的隐含文件。 -d …

32T存储删除视频的恢复方法

由于存储技术的发展和普及目前很多行业都开始使用小型存储&#xff0c;NAS可以通过网络进行数据上传和读取&#xff0c;使用极为方便。但是由于NAS设备容量较大且碎片较多&#xff0c;所以此类设备删除或者格式后恢复难度是比较大的&#xff0c;下边我们来分享下32T存储的恢复方…

不愧是字节,图像算法面试真细致

这本面试宝典是一份专为大四、研三春招和研二暑假实习生准备的珍贵资料。 涵盖了图像算法领域的核心知识和常见面试题&#xff0c;包括卷积神经网络、实例分割算法、目标检测、图像处理等多个方面。不论你是初学者还是有经验的老手&#xff0c;都能从中找到实用的内容。 通过…

网站接口是怎么开发的,开发之后是怎么用的

网站接口的开发流程 1.确定接口需求 在开发接口之前我们先要知道&#xff0c;要开发什么样的接口&#xff0c;这个接口是用来干什么的&#xff0c;得先知道相关的需求&#xff0c;才能规划下一步&#xff0c;比如客户想要一个文章列表&#xff0c;那么我们就知道这个需求…