六、文件查找

news2024/11/28 0:43:21

一、文件查找

1.查找文件内容

​ 命令:grep 'keywords' /dir_path/filename

2.查找系统命令

​ 命令:which command

3.查找命令及配置文件位置

​ 命令:whereis command

4.find查找

find $find_path -name|-type|-perm|-size|-atime|-mtime|-ctime

4.1按文件名查找

find ./ -name "filename"
find ./ -name "*txt" 通配符
find ./ -iname "*txt" 忽略大小写

4.2按文件大小查找

find ./ -size +5M 大于

-5M 小于

5M 等于

4.3按时间查找

find ./ -[mtime|ctime|atime] +30
find ./ -[mmin|cmin|amin] -20

image-20240507162725438

-atime = access访问时间,
查找在指定时间曾被存取过的文件或目录,单位以24小时计算
cat, less, more
chmod, chown, ls, stat 等不会修改些时间,
使用 ls -utl 可以按此时间顺序查看;
-mtime = modify改变时间
查找在指定时间曾被更改过的文件或目录,单位以24小时计算
内容修改时间会改变,最后一次内容修改时间,
vim 保存后等,
修改时间发生改变的话, atime 和 ctime 也相应跟着发生改变.
-ctime = change修改时间
查找在指定时间之时被更改的文件或目录,单位以24小时计算
属性修改时间会改变,
chmod, chown 等状态时间改变,但修改时间mtime不会改变

4.4按文件类型查找

find ./ -type f 普通文件
d 目录
l 软连接
b 设备块

4.5按文件权限查找

  • 查找当前目录下文件权限为755的文件及目录

    find ./ -perm 755

4.6参数逻辑关系

  • 并且 -a

find / -name "*.txt" -a -type f

  • 或者 -o

find / -name "*.txt" -o -type f

  • 取反:!

find /etc/ ! -name "*.conf"

​ 案例:分别找出test5 和 除了test5的文件

[root@localhost ~]# find /home/ -name *test5*
[root@localhost ~]# find /home/ ! -name "test5*" # !--取反

4.7查找后的action

4.7.1 exec

find /etc -name "ifcfg*" -exec cp -rf {} /tmp \;

	exec命令:对之前查找出来的文件做进一步操作

	{}为前面查找到的内容,

	\; 表示动作结束
4.7.2 xargs

find /home/ -name "test*" | xargs -i cp {} /tmp/

	xargs 参数传递
4.7.2 exec与xargs的区别
  • -exec:频繁启动终止进程。如果执行的动作太多,就会报错。(参数是一个一个传递的,传递一个参数执行一次命令。)

  • xargs:只调用一个进程,直到所有任务处理结束,才会终止这个进程。(将前一个命令的标准输出传递给下一个命令,作为它的参数转换成下一个命令的参数列表。)

  • PS:xargs不能操作文件名有空格的文件;

如果有100万个 文件名包含空格的文件 则可以考虑 给文件改名,然后用xargs处理。

二、打包压缩

1.打包及压缩工具

  • 打包工具:

    tar(打包)

  • 压缩工具

    gzip .gz

    bzip2(只压缩) .bz2

    zip .zip

    xzip .xz

2.tar打包解包

2.1 tar打包

tar -cvf dir.tar dir
tar -cf dir.tar dir

2.2 tar解包

tar -xvf dir.tar

tar xf dir.tar

3.各类压缩及解压缩工具

  • gzip

    • 压缩:

      gzip filename

    • 解压缩:

      gzip -d filename.gz

      gunzip filename.gz

  • bzip2 yum -y install bzip2

    • 压缩:

      bzip2 filename

    • 解压缩:

      bzip2 -d filename.bz2

      bunzip2 filename.bz2

  • xzip 与tar连用

  • zip

    • 压缩:

      zip -r dirname.zip dir

    • 解压缩:

      unzip dirname.zip

    • 解压到指定位置:

      unzip dirname.zip -d /usr/local/src

4.tar打包解包+各类压缩

4.1 tar打包+各类压缩

tar -cvzf dir.tar.gz dir

tar -cvjf dir.tar.bz2 dir

tar -cvJf dir.tar.xz dir

4.2 tar解包+各类压缩

tar -xvzf dir.tar.gz

tar -xjvf dir.tar.bz2

tar -xJvf dir.tar.xz

  • 解压到指定位置:

    tar -xf dir.tar.gz -C /usr/local/src

三、邮件

1.配置邮件

yum install -y mailx
vim /etc/mail.rc

set from=\$mail_addr
set smtp=smtp.163.com
set smtp-auth-user=\$mail_addr
set smtp-auth-password=SMTP授权码
set smtp-auth=login

2.发送邮件

工作级备份日志邮件

cat /etc/passwd | mail -s "邮件主题" mail_addr

cd /var &> /dev/null && tar -czf log-`date +%F`.tar.gz log/ 
&& echo "备份成功"| mail -s "备份日志" mail_addr 
|| echo "备份失败"| mail -s "备份日志" mail_addr

cd /vr &> /dev/null && tar -czf log-`date +%F`.tar.gz log/ 
&& echo "备份成功"| mail -s "备份日志" mail_addr 
|| echo "备份失败"| mail -s "备份日志" mail_addr

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

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

相关文章

HarmonyOS实战开发教程-如何开发一个2048游戏

今天为大家分享的是2048小游戏,先看效果图: 这个项目对于新手友友来说可能有一点难度,但是只要坚持看完一定会有收获。因为小编想分享的并不局限于ArkTs语言,而是编程思想。 这个游戏的基本逻辑是初始化一个4乘4的数组&#xff…

跟TED演讲学英文:4 pillars of college success in science by Freeman Hrabowski

4 pillars of college success in science Link: https://www.ted.com/talks/freeman_hrabowski_4_pillars_of_college_success_in_science Speaker: Freeman Hrabowski Date: February 2013 文章目录 4 pillars of college success in scienceIntroductionVocabularyTranscr…

休斯《公共管理导论》第5版/考研真题解析/章节题库

第一部分 考研真题精选 一、概念题二、简答题三、论述题四、案例分析题第二部分 章节题库 第1章 一个变革的时代第2章 政府的角色第3章 传统的公共行政模式第4章 公共管理第5章 公共政策第6章 治 理第7章 问 责第8章 利害关系人和外部环境第9章 管制、外包和公共企…

有哪些软件可以使用云渲染?

随着技术的发展,云渲染已成为动画制作人员与设计师重要的渲染助手。它可结合云端强大的计算机能力,帮助渲染人员高速的完成渲染任务,大幅度节省时间和本地计算资源。它们以用户友好的界面、强大灵活的渲染能力,满足了各类专业渲染…

鸿蒙内核源码分析(进程通讯篇) | 九种进程间通讯方式速揽

进程间为何要通讯 ? 鸿蒙内核默认支持 64个进程和128个任务,由进程池和任务池统一管理.内核设计尽量不去打扰它们,让各自过好各自的日子, 但大家毕竟在一口锅里吃饭, 不可能不与外界联系, 联系就得有渠道&#xff0c…

【进程终止】退出信号 | 三种退出情况 | 如何进程终止returnexit_exit

目录 退出码 退出信号 进程终止情况3 如何进程终止 return退出 库函数exit 系统调用函数_exit ​exit和_exit的区别缓冲区 exit _exit 退出码 回顾上篇 代码跑完,结果正确(退出码为0)代码跑完,结果不正确(退…

选择器、pxcook软件、盒子模型

结构伪类选择器 定义&#xff1a;根据结构的元素关系来查找元素。 <title>Document</title><style>li:first-child{color:aqua ;}li:last-child{color: aqua;}li:nth-child(3){color: aqua;}</style> </head> <body><ul><li>…

端口被其他进程占用:OSError: [Errno 98] Address already in use

一、问题描述 错误提示端口号正在被使用 二、解决办法 1.使用 lsof 命令&#xff0c;列出所有正在监听&#xff08;即被绑定&#xff09;的网络连接&#xff0c;包括它们所使用的端口号 sudo lsof -i -P -n | grep LISTEN 2.解绑被绑定的端口号 根据 netstat 或 lsof 命令…

C#修改默认参数settings文件

右击项目在设置中进行修改&#xff1a; 千万不要在这里改。 如果要在自己的项目里添加这个文件&#xff0c;首先新建个文件夹&#xff0c;然后添加.setting文件&#xff0c;然后再像上面说的那样添加属性。

Ansible自动化工具模块调用与playbook编写

目录 一、Ansible工作机制与特点 &#xff08;一&#xff09;Ansible工作机制 1. 初始化与配置 2. 编写Playbook 3. 调用模块 4. 加密敏感数据 5. 执行Playbook 6. 收集执行结果 7. 错误处理与回滚 8. 反馈与报告 &#xff08;二&#xff09;Ansible 的主要特点包括…

BUUCTF [极客大挑战 2019]EasySQL 1

BUUCTF:https://buuoj.cn/challenges 题目描述&#xff1a; [极客大挑战 2019]EasySQL 1 密文&#xff1a; 解题思路&#xff1a; 1、根据题目提示&#xff0c;并且网站也存在输入框&#xff0c;尝试进行SQL注入。 首先&#xff0c;判断提交方式&#xff0c;随机输入数据…

力扣刷题--数组--第二天

今天仍然做二分查找相关的题目。先来回顾一下二分查找的方法和使用的条件。二分查找是在数组中查找目标值的一种方法&#xff0c;通过边界索引确定中间索引&#xff0c;判断中间索引处的元素值和目标值的大小&#xff0c;来不断缩小查找区间。使用二分查找有如下一些限制&#…

PXE批量安装

系统装机的三种引导方式 u盘光盘网络装机 光盘&#xff1a; 1.类似于usb模式 2.刻录模式 系统安装过程 加载boot loader Boot Loader 是在操作系统内核运行之前运行的一段小程序。通过这段小程序&#xff0c;我们可以初始化硬件设备、建立内存空间的映射图&#xff0c;从…

使用开放式用户通信连接两台西门子S71200plc

步骤1.在项目中创建两台PLC。 步骤2.分别设置两个PLC的参数。 plc1 plc2 步骤3.对两个plc进行组态 步骤4.在plc1和plc2中各自创建DB块&#xff0c;用于通信。 须在块的属性中取消优化块的访问选项。 plc1 plc2 步骤5.往plc1的main块中编写代码。 步骤6.往plc2的main块中编写…

AndroidStudio的Iguana版的使用

1.AndroidStudio介绍 Android Studio 是用于开发 Android 应用的官方集成开发环境 (IDE)。Android Studio 基于 IntelliJ IDEA 强大的代码编辑器和开发者工具&#xff0c;还提供更多可提高 Android 应用构建效率的功能&#xff0c;例如&#xff1a; 基于 Gradle 的灵活构建系统…

XORM 框架的使用

1、xorm 1.1、xorm 简介 xorm 是一个简单而强大的Go语言ORM库. 通过它可以使数据库操作非常简便。 特性 支持 struct 和数据库表之间的灵活映射&#xff0c;并支持自动同步事务支持同时支持原始SQL语句和ORM操作的混合执行使用连写来简化调用支持使用ID, In, Where, Limit,…

nginx模型设计和进程讲解

一. Nginx进程模型解析 1. master主进程 和 worker工作进程 [rootlocalhost sbin]# ps -ef|grep nginx root 15411 1 0 21:08 ? 00:00:00 nginx: master process ./nginx nobody 15412 15411 0 21:08 ? 00:00:00 nginx: worker process root…

pytest教程-39-钩子函数-pytest_runtest_setup

领取资料&#xff0c;咨询答疑&#xff0c;请➕wei: June__Go 上一小节我们学习了pytest_runtest_protocol钩子函数的使用方法&#xff0c;本小节我们讲解一下pytest_runtest_setup钩子函数的使用方法。 pytest_runtest_setup 钩子函数在每个测试用例的 setup 阶段被调用。这…

学习软考----数据库系统工程师22

关系运算 基本的关系代数运算 拓展的关系运算 除&#xff1a;需要S连接中属性为C和D的两个元组都与R连接一样&#xff0c;且在R连接中对应的另外的元素完全一致 总结

聊聊 ASP.NET Core 中间件(三):如何创建自己的中间件?

前言 本质上&#xff0c;中间件类也是一个普通的 .NET 类&#xff0c;它不需要继承任何父类或者实现任何接口。 但是有几个约定&#xff1a; 需要有一个构造方法构造方法至少要有一个 RequestDelegate 类型的参数&#xff0c;用来指向下一个中间件。需要定义一个名字为 Invo…